Heim Backend-Entwicklung C#.Net-Tutorial Wie verwende ich R-Wert-Referenzen? Zusammenfassung der Verwendung des R-Wert-Referenzbeispiels

Wie verwende ich R-Wert-Referenzen? Zusammenfassung der Verwendung des R-Wert-Referenzbeispiels

Jun 15, 2017 pm 02:06 PM

1. L-Werte und R-Werte: Es gibt keine Standarddefinition für L-Werte und R-Werte in C++, aber es gibt ein weithin anerkanntes Sprichwort: diejenigen, die Adressen annehmen können, Namen haben und nicht temporär sind l-Werte; diejenigen, die keine Adressen annehmen können, sind temporär ein R-Wert. Es ist ersichtlich, dass unmittelbare Werte, von Funktionen zurückgegebene Werte usw. alle nicht anonyme Objekte (einschließlich Variablen) sind, die von zurückgegeben werden Funktionen, konstante Objekte usw. sind im Wesentlichen alle L-Werte. Wie oben verstanden, werden die Erstellung und Zerstörung vom Compiler hinter den Kulissen gesteuert. Der Programmierer kann nur sicherstellen, dass die R-Werte (einschließlich unmittelbarer Zahlen) in dieser Zeile gültig sind des Codes; und diejenigen, die vom Benutzer erstellt wurden und deren Lebensdauer durch die Bereichsregeln ermittelt werden kann, sind L-Werte (einschließlich Verweise auf lokale Variablen und von Funktionen zurückgegebene Konstantenobjekte), zum Beispiel: int& foo(){int tmp; ;} ​ int fooo(){int ret

1. Eine kurze Analyse von R-Wert-Referenzen, Übertragungssemantik und perfekter Weiterleitung in C++11

Wie verwende ich R-Wert-Referenzen? Zusammenfassung der Verwendung des R-Wert-Referenzbeispiels

Einführung: Bewegungssemantik ist ein wichtiges Konzept für C++11, und ich habe dieses Konzept immer vage verstanden. Nachdem ich die Informationen kürzlich durchgesehen hatte, fühlte ich mich plötzlich erleuchtet, also habe ich die R-Wert-Referenz, die Übertragungssemantik und die perfekte Weiterleitung in C++11 als Referenz aufgezeichnet

[Verwandte Q&A-Empfehlungen]:

c++ – Gibt es einen Konstantenwertverweis?

c++ – Warum der Rückgabewert von std::move() einer R-Wert-Referenz zugewiesen werden kann

Überladener Operator – Operation in C++ Das Überladen von Symbolen erfordert das Schreiben mehrerer doppelter Versionen (Referenz und R-Wert-Referenz). Gibt es eine Möglichkeit, dies zu vereinfachen? Bedeutet „den L-Wert vernichten“?

Das obige ist der detaillierte Inhalt vonWie verwende ich R-Wert-Referenzen? Zusammenfassung der Verwendung des R-Wert-Referenzbeispiels. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So fügen Sie C-Compiler der nächsten Ebene hinzu So fügen Sie C-Compiler der nächsten Ebene hinzu Mar 03, 2025 pm 05:44 PM

So fügen Sie C-Compiler der nächsten Ebene hinzu

Was sind die Alternativen zu Null in der C -Sprache Was sind die Alternativen zu Null in der C -Sprache Mar 03, 2025 pm 05:37 PM

Was sind die Alternativen zu Null in der C -Sprache

Methode zum Kopieren von Code nach C -Sprachkompiler Methode zum Kopieren von Code nach C -Sprachkompiler Mar 03, 2025 pm 05:43 PM

Methode zum Kopieren von Code nach C -Sprachkompiler

Welcher C -Sprachkompiler ist besser? Welcher C -Sprachkompiler ist besser? Mar 03, 2025 pm 05:39 PM

Welcher C -Sprachkompiler ist besser?

Was sind die Webversionen von C -Sprach Compilern? Was sind die Webversionen von C -Sprach Compilern? Mar 03, 2025 pm 05:42 PM

Was sind die Webversionen von C -Sprach Compilern?

Ist Null in der modernen Programmierung in der C -Sprache noch wichtig? Ist Null in der modernen Programmierung in der C -Sprache noch wichtig? Mar 03, 2025 pm 05:35 PM

Ist Null in der modernen Programmierung in der C -Sprache noch wichtig?

C Sprache Online -Programmierwebsite C Sprachkompiler Offizielle Website Zusammenfassung C Sprache Online -Programmierwebsite C Sprachkompiler Offizielle Website Zusammenfassung Mar 03, 2025 pm 05:41 PM

C Sprache Online -Programmierwebsite C Sprachkompiler Offizielle Website Zusammenfassung

C Sprachkompilierer -Installations -Tutorial (Computerversion) C Sprachkompilierer -Installations -Tutorial (Computerversion) Mar 03, 2025 pm 05:41 PM

C Sprachkompilierer -Installations -Tutorial (Computerversion)

See all articles