Tag: move-constructor

In C++11 move-Konstruktor ist eine spezielle member-Funktion ähnlich wie ein copy-Konstruktor, sondern nehmen eine rvalue-Referenz parameter.

Move-Konstruktor aufrufen base-class-Move-Konstruktor

Anzahl der Antworten 3 Antworten
Ich habe eine base-Klasse, die im wesentlichen umschließt, die Sie hinzufügen einer Klasse zu einer beliebigen windows-handle (e.g, HWND, HFONT), und verwendet eine policy-Klasse zu attach/detach und zerstören: //class SmartHandle template<typename THANDLE, class TWRAPPER, class TPOLICY> class

vector::push_back besteht darauf, mit Hilfe des copy-Konstruktors, obwohl ein move-Konstruktor zur Verfügung gestellt

Anzahl der Antworten 2 Antworten
Ich erhalte eine seltsame Fehlermeldung von gcc und kann nicht herausfinden, warum. Ich habe die folgende Beispiel-code, um das problem klarer. Grundsätzlich ist es eine Klasse definiert, für die ich seine copy-Konstruktor und copy-Zuweisungsoperator private, um zu

Umsetzung der Move-Konstruktor durch den Aufruf Move-Zuweisungs-Operator

Anzahl der Antworten 6 Antworten
Dem MSDN-Artikel, Gewusst wie: Schreiben Sie einen Umzug Constuctor, hat die folgende Empfehlung. Wenn Sie beide einen move-Konstruktor und move-Zuweisungs-operator für die Klasse, die Sie beseitigen können, um redundanten code schreiben der move-Konstruktor-Aufruf der move-Zuweisungs-operator. Die folgende

Move-Konstruktoren und Statische Arrays

Anzahl der Antworten 4 Antworten
Ich habe die Möglichkeiten der Bewegen Konstruktoren in C++, und ich Frage mich, was sind einige Möglichkeiten der Einnahme von Vorteil, diese Funktion an einem Beispiel, wie unten. Betrachten Sie diesen code: template<unsigned int N> class Foo

Mit move-Semantik mit std::pair oder std::tuple

Anzahl der Antworten 2 Antworten
Angenommen, Sie möchten, um die Vorteile der move-Semantik, aber eine Ihrer beweglichen Klassen braucht, um Teil einer std::pair. Der Zweck wäre, zu erstellen, die eine Funktion zurückgibt, die ein std::pair behandelt werden kann wie eine rvalue und

Wie soll ich umgehen mit Mutexe in beweglichen Typen in C++?

Anzahl der Antworten 5 Antworten
Vom design std::mutex ist nicht beweglich, noch kopieren-constructable. Dies bedeutet, dass eine Klasse A, die hat einen mutex, nicht erhalten ein Standard-move-Konstruktor. Wie würde ich diese Art A verschiebbar in eine thread-sichere Weise? Die Frage hat eine

Move-Semantik, wenn die sendende Objekt als Funktionsparameter

Anzahl der Antworten 4 Antworten
Ich Spiele mit move-Konstruktoren und move-Zuordnungen und ich habe stolperte über dieses problem. Erster code: #include <iostream> #include <utility> class Foo { public: Foo() {} Foo(Foo&& other) { value = std::move(other.value); other.value = 1; //since it's int!

Wie bekomme ich g ++, um C ++ 11-Code mit einem Move-Konstruktor zu kompilieren?

Anzahl der Antworten 2 Antworten
Ich kann nicht scheinen, um g++ zum kompilieren von c++11 code, der verwendet ein move-Konstruktor. Ich bekomme immer diese Fehlermeldung: collin@Serenity:~/Projects/arraylib$ g++ ./t2.cpp ./t2.cpp:10:27: error: expected ‘,’ or ‘...’ before ‘&&’ token ./t2.cpp:10:38: error: invalid constructor; you

Wann wird Move Constructor aufgerufen?

Anzahl der Antworten 2 Antworten
Ich bin verwirrt darüber, Wann ein move-Konstruktor wird aufgerufen, gegen einen copy-Konstruktor. Ich habe gelesen, die folgenden Quellen: Move-Konstruktor ist nicht zu bekommen, nennt man in C++0x Move-Semantik und rvalue-Referenzen in C++11 msdn Alle diese Quellen sind

Bedingungen für automatisches Generieren von Standard / Kopieren / Verschieben von ctor und Kopieren / Verschieben von Zuweisungsoperatoren?

Anzahl der Antworten 2 Antworten
Ich will, um mein Gedächtnis aufzufrischen über die Bedingungen, unter denen ein compiler in der Regel automatisch generiert eine default-Konstruktor, copy-Konstruktor und Zuweisungsoperator. Ich erinnere mich, es gab einige Regeln, aber ich erinnere mich nicht, und auch