Was sagt uns auto &&?

Wenn Sie Code wie lesen

auto&& var = foo();

woherfoo ist eine beliebige Funktion, die einen Wert vom Typ zurückgibtT. Dannvar ist ein Wert vom Typ rWert, auf den verwiesen wirdT. Aber wofür bedeutet das?var? Heißt das, wir dürfen die Ressourcen von stehlenvar? Gibt es vernünftige Situationen, in denen Sie verwenden solltenauto&& dem Leser Ihres Codes etwas mitteilen, wie Sie es tun, wenn Sie aunique_ptr<> zu sagen, dass Sie exklusives Eigentum haben? Und was ist zum BeispielT&& wannT ist vom Klassentyp?

Ich möchte nur verstehen, ob es irgendwelche anderen Anwendungsfälle gibtauto&& als bei der Template-Programmierung; wie die in den Beispielen in diesem Artikel besprochenenUniverselle Referenzen von Scott Meyers.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage