E2559 R-Wertreferenz des Typs '%s' kann nicht mit L-Wert des Typs '%s' initialisiert werden (C++)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Compiler-Fehler und -Warnungen (C++) - Index

Diese Fehlermeldung wird ausgegeben, wenn versucht wird, einen L-Wert an eine R-Wertreferenz zu binden. Bei der Konvertierung eines R-Wertreferenztyps darf die Quelle kein L-Wert (wie eine benannte Variable) und keine R-Wertreferenz auf einen Funktionstyp sein.

Beispiel:


   A&  a_ref3 = A();  // Error!
   A&& a_ref4 = A();  // Ok