C++-Referenzen
Eine Referenzvariable ist ein Alias, also ein anderer Name für eine bereits existierende Variable. Sobald eine Referenz mit einer Variablen initialisiert wurde, kann entweder der Variablenname oder der Referenzname verwendet werden, um auf die Variable zu verweisen.
Referenzen vs. Zeiger
Referenzen werden oft mit Zeigern verwechselt, aber drei Hauptunterschiede zwischen Referenzen und Zeigern sind −
-
Sie können keine NULL-Referenzen haben. Sie müssen immer davon ausgehen können, dass eine Referenz mit einem legitimen Speicherort verbunden ist.
-
Sobald eine Referenz auf ein Objekt initialisiert wurde, kann sie nicht geändert werden, um auf ein anderes Objekt zu verweisen. Zeiger können jederzeit auf ein anderes Objekt zeigen.
-
Eine Referenz muss initialisiert werden, wenn sie erstellt wird. Zeiger können jederzeit initialisiert werden.
Referenzen in C++ erstellen
Stellen Sie sich einen Variablennamen als ein Etikett vor, das an der Position der Variablen im Speicher angebracht ist. Sie können sich eine Referenz dann als ein zweites Etikett vorstellen, das an diesem Speicherort angebracht ist. Daher können Sie auf den Inhalt der Variablen entweder über den ursprünglichen Variablennamen oder die Referenz zugreifen. Angenommen, wir haben das folgende Beispiel −
int i = 17;
Wir können Referenzvariablen für i wie folgt deklarieren.
int& r = i;
Lesen Sie das &in diesen Deklarationen als Referenz . Lesen Sie daher die erste Deklaration als „r ist eine auf i initialisierte ganzzahlige Referenz“ und lesen Sie die zweite Deklaration als „s ist eine auf d initialisierte doppelte Referenz“. Das folgende Beispiel verwendet Referenzen auf int und double −
Live-Demo#include <iostream> using namespace std; int main () { // declare simple variables int i; double d; // declare reference variables int& r = i; double& s = d; i = 5; cout << "Value of i : " << i << endl; cout << "Value of i reference : " << r << endl; d = 11.7; cout << "Value of d : " << d << endl; cout << "Value of d reference : " << s << endl; return 0; }
Wenn der obige Code zusammen kompiliert und ausgeführt wird, erzeugt er das folgende Ergebnis −
Value of i : 5 Value of i reference : 5 Value of d : 11.7 Value of d reference : 11.7
Referenzen werden normalerweise für Funktionsargumentlisten und Funktionsrückgabewerte verwendet. Das Folgende sind also zwei wichtige Themen im Zusammenhang mit C++-Referenzen, die einem C++-Programmierer klar sein sollten −
Sr.No | Konzept &Beschreibung |
---|---|
1 | Verweise als Parameter C++ unterstützt das Übergeben von Referenzen als Funktionsparameter sicherer als Parameter. |
2 | Referenz als Rückgabewert Sie können einen Verweis von einer C++-Funktion wie jedem anderen Datentyp zurückgeben. |
C Sprache