Funktion für l-Wert und r-Wert



  • Hallo!
    Gibt es eine Möglichkeit zu unterscheiden,
    ob der Rückgabewert einer Funktion (genauer:
    überladener Index-Operator) als l-Wert ver-
    wendet wird oder als r-Wert, so dass durch
    den Compiler die entsprechende Version der
    Funktion verwendet wird?
    Als r-Wert muss ich nur einen Zeiger auf dass
    Objekt zurückgeben, als l-Wert einen "iterator",
    der einen neuen Zeiger annehmen kann und das
    alte Objekt löscht (also einen Zeiger auf den
    Zeiger).

    Alex



  • So direkt geht das nicht, aber mit einer Proxyklasse könntest du so etwas realisieren.



  • Der "iterator" ist ja bereits eine Proxy-Klasse
    (auch wenn ich das bisher nicht so genau wusste)
    Allerdings ändert das nichts am Overhead.
    Da werde ich also die zweite (schnellere) Funktion
    unter anderem Namen verwenden müssen und manuell
    die passende auswählen... Trotzdem Danke!

    Alex


Anmelden zum Antworten