Suchergebnisse für Anfrage "rvalue-reference"

4 die antwort

Kann lvalue nicht an rvalue reference binden

Ich habe dieses C ++ - Testcode-Snippet, #include <vector> class A { std::vector<int> x; public: A(std::vector<int>&& _x) : x(_x) {} }; class B { A a; public: B(std::vector<int>&& _x) : a(/*move(*/_x/*)*/) {} }; Ich gehe vorbei_x nach B als ...

8 die antwort

Vermeiden Sie das exponentielle Anwachsen von const-Referenzen und r-Wert-Referenzen im Konstruktor

Ich programmiere einige Klassen mit Vorlagen für eine maschinelle Lernbibliothek und stehe diesem Problem häufig gegenüber. Ich verwende hauptsächlich das Richtlinienmuster, bei dem Klassen als Vorlagenargument Richtlinien für verschiedene ...

2 die antwort

invalid initialization of non-const reference from a rvalue

So habe ich folgende Funktion: void scan(std::istream& is, Handler& h);Ich möchte es auf verschiedene Arten aufrufen, wie: scan(std::cin, Handler()); scan(std::ifstream("myfile"), myhandler); Der Compiler beschwert sich ...

TOP-Veröffentlichungen

6 die antwort

Kann ich eine rWert-Referenz für temporäre Werte verwenden? Ist es undefiniertes Verhalten oder nicht?

Aktualisierung der FrageWarum haben diese beiden Referenzwerte ein unterschiedliches Verhalten? [https://stackoverflow.com/questions/35315472/why-this-two-rvalue-references-examples-have-different-behavior] : Quellcode int a = 0; auto && b = ...

6 die antwort

Warum sind rvalues-Referenzvariablen nicht rvalue?

Nehmen wir an, ich habe zwei Überladungen einer Funktionf. f(T&&) undf(T&). Dann im Körper vong: g(T&& t) { f(t);} die Überlastungf(T&) wird aufgerufen, weil t als lWert betrachtet wird. Das ist sehr überraschend für mich. Wie eine Funktion mit ...

2 die antwort

Mehrdeutiger Aufruf mit überladener r-Wert-Referenzfunktion

Ich habe eine Klasse mit den folgenden Deklarationen: class IcoSphere { [...] private: int _addVertex(const glm::vec3 &p); int addVertex(glm::vec3 p); int addVertex(const glm::vec3 &&p); [...] }; Dann rufe ich 'addVertex' wie folgt ...

8 die antwort

Rvalue-Referenz wird als L-Wert behandelt?

Ich habe diese Antwort gepostet:https: //stackoverflow.com/a/28459180/264205 [https://stackoverflow.com/a/28459180/2642059] Welche enthält den folgenden Code: void foo(string&& bar){ string* temp = &bar; cout << *temp << " @:" << temp << endl; ...

6 die antwort

Wie ist es möglich, einen Verweis auf einen Wert zu erhalten?

Ich habe benutztstd::move undstd::forward in C ++. Meine Frage ist: Wie werden diese Funktionen tatsächlich von der Standardbibliothek implementiert? Wenn ein lWert eine Adresse ist, die Sie abrufen können, und ein rWert ausschließlich kein ...

4 die antwort

visuelle Studio-Implementierung von "Move Semantics" und "Rvalue Reference"

Ich bin auf ein Youtube-Video mit C ++ 11-Parallelität (Teil 3) und den folgenden Code gestoßen, der das richtige Ergebnis im Video kompiliert und generiert. Ich habe jedoch einen Kompilierungsfehler für diesen Code mit Visual Studio 2012 ...

6 die antwort

On wie man Rvalue oder Lvalue Referenz und if-it-has-a-name Regel erkennt

Ich las Thomas BeckersArtike [http://thbecker.net/articles/rvalue_references/section_05.html] auf rWertreferenz und deren Verwendung. Dort definiert er, was er nennt if-it-has-a-name Regel: Dinge, die als rWert-Referenz deklariert sind, können ...