Suchergebnisse für Anfrage "rvalue-reference"
Referenz, konstante Referenz, rWert-Referenz oder konstante rWert-Referenz übergeben?
Ich habe gelernt, durch Nachschlagen zu bestehen, und hier ist der Test, den ich gemacht habe:
Wie vermeide ich die Kopie, wenn ich zurückkomme?
Ich habe eine Funktion, die einen Vektor oder eine Menge zurückgibt:
Welcher Typ deklariert werden soll, um das Kopieren zu vermeiden und sicherzustellen, dass der zurückgegebene Wert verschoben wird
Nehme an, dassIch habe eine Funktion
Lvalue to rvalue Referenzbindung
Der Compiler beschwert sich immer wieder Ich versuche, einen Wert an eine R-Wert-Referenz zu binden, aber ich kann nicht sehen, wie. Ich bin neu in C ++ 11, ...
Ist das Pass-by-Value-and-Then-Move-Konstrukt eine schlechte Redewendung?
Da wir in C ++ eine Verschiebungssemantik haben, ist dies heutzutage üblich void set_a(A a) { _a = std::move(a); }Die Argumentation ist, dass wenna Ist dies ein Wert, wird die Kopie entfernt und es wird nur ein Zug ausgeführt. Aber was passiert ...
Wandeln C ++ 11-Compiler lokale Variablen in Werte um, wenn dies während der Codeoptimierung möglich ist?
Manchmal ist es sinnvoll, komplizierte oder lange Ausdrücke beispielsweise in mehrere Schritte aufzuteilen (die 2. Version ist nicht klarer, aber es ist nur ein Beispiel): return object1(object2(object3(x)));kann geschrieben werden als: object3 ...
Warum müssen wir rvalue reference im move-Konstruktor auf null setzen?
//code from https://skillsmatter.com/skillscasts/2188-move-semanticsperfect-forwarding-and-rvalue-references class Widget { public: Widget(Widget&& rhs) : pds(rhs.pds) // take source’s value { rhs.pds = nullptr; // why?? } private: struct ...
Das Verlängern der temporären Lebensdauer durch rvalue data-member funktioniert mit aggregate, aber nicht mit constructor. Warum?
Ich habe das folgende Schema gefunden, um eine temporäre Lebensdauer zu verlängern, ich weiß nicht, ob es sollte, aber es funktioniert. struct S { std::vector<int>&& vec; }; int main() { S s1{std::vector<int>(5)}; // construct with temporary ...