Konvertierungsoperator, der eine Referenz zurückliefert
-
class Foo { // ... operator Bar& () { // ... } };Bar ist eine größere Klasse, will sie deshalb als Referenz zurückgeben. Ist das so korrekt? Arbeitet der Operator überalld da, wo ein Objekt vom Typ Bar erwartet wird, oder wird da zwischen "Objekt vom Typ Bar" und "Referenz vom Typ Bar" unterschieden?
Afaik verhält sich eine Referenz genau wie das Objekt selbst, deshalb dürfte es egal sein.
-
Wo kommt das Objekt Bar denn her? Eine Referenz ist ein Alias auf ein Objekt. Ohne das Objekt ist auch die Referenz nicht gültig.
-
Foo hat ein Bar Objekt.