Suchergebnisse für Anfrage "move-constructor"
(Warum) sollte ein Verschiebungskonstruktor oder Verschiebungszuweisungsoperator sein Argument löschen?
Eine Beispielimplementierung für einen Move-Konstruktor aus einem C ++ - Kurs sieht ungefähr so aus: /// Move constructor Motorcycle::Motorcycle(Motorcycle&& ori) : m_wheels(std::move(ori.m_wheels)), ...
Move Constructor vs Copy Elision. Welches wird angerufen?
Ich habe hier zwei Code-Teile, die ich Ihnen zeigen möchte. Es handelt sich um zwei Klassen, von denen jede einen Verschiebungskonstruktor und eine Funktion enthält, die ein temporäres Ergebnis liefert. Im ersten Fall ruft die Funktion, die ein ...
Understanding `std :: is_move_constructible`
Typen ohne Verschiebungskonstruktor, aber mit einem Kopierkonstruktor, der @ akzeptieconst T& Argumente, erfüllenstd::is_move_constructible. Zum Beispiel im folgenden Code: #include <type_traits> struct T { T(const T&) {} //T(T&&) = delete; }; ...
Move-Konstruktor wird beim Auslösen einer Ausnahme nicht aufgerufen
Ich habe eine Variable, die die aktuelle Ausnahme akkumuliert und bereinigt werden muss, wenn die aktuelle Ausnahme ausgelöst wird (damit derselbe Fehler nicht erneut gemeldet wird). Das Problem ist, dassthrow std::move(ex); ruft ...
Wie soll ich mit Mutexen in beweglichen Typen in C ++ umgehen?
Von Entwurf,std::mutex kann weder verschoben noch kopiert werden. Dies bedeutet, dass eine KlasseA, das einen Mutex enthält, erhält keinen Default-Move-Konstruktor. Wie würde ich diesen Typ machenA Thread-sicher beweglich?
Gilt die Regel, std :: string nicht in Ausnahmen einzubetten, immer noch für Move-Konstruktoren?
Ich habe vor einiger Zeit gehört, dass ich keine Ausnahmeklassen erstellen soll, die Felder von haben würdenstd::string Art. Das ist, wasBoost-Website sagt [http://www.boost.org/community/error_handling.html]. Das Grundprinzip ist dasstd::string ...
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 ...
Expliziter Verschiebungskonstruktor
Versucht, den folgenden Code zu kompilieren: struct Foo { explicit Foo ( void ) { } explicit Foo ( Foo&& rhs ) { } }; Foo bar ( void ) { return Foo(); }Den folgenden Fehler erhalten: Aufruf des implizit gelöschten Kopierkonstruktors von ...
Seite 1 von 2