Einführung:
In C können Memberfunktionen mit verschiedenen Spezifizierern deklariert werden. Neben dem bekannten const wurden im C 11-Standard zwei zusätzliche Spezifizierer, & und &&, eingeführt. Ziel dieses Artikels ist es, die Bedeutung und Verwendung dieser Spezifizierer zu klären.
Die Spezifizierer verstehen:
const&:
Beispiel:
<code class="cpp">class A { public: const A& operator*() const&; // Can be invoked on both const and non-const lvalues };</code>
&:
Beispiel:
<code class="cpp">class A { public: A& operator*() &; // Can be invoked only on non-const lvalues };</code>
&&:
Beispiel:
<code class="cpp">class A { public: A&& operator*() &&; // Can be invoked only on rvalues };</code>
Verwendung in der Praxis:
Diese Spezifizierer ermöglichen spezifischere und effizientere Definitionen von Mitgliedsfunktionen.
Fazit:
Die const&, & und && Spezifizierer bieten mehr Kontrolle und Flexibilität beim Definieren von Mitgliedsfunktionen in C. Das Verständnis ihrer Nuancen ermöglicht es Programmierern, effizienteren und robusteren Code zu schreiben.
Das obige ist der detaillierte Inhalt vonFür welche Member-Funktionsspezifizierer werden &, && und const& in C verwendet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!