Referenzvariablen in C ++

Die Deklaration einer Variablen, die eine Referenz ist einfach. Während der Zeiger ein Sternchen verwendet, *, die Referenz verwendet ein kaufmännisches, . Aber es gibt eine Wendung zu. Man kann nicht einfach es wie folgt erklären:

int BestReference- // Nein! Das wird nicht funktionieren!

Wenn Sie dies versuchen, eine Fehlermeldung angezeigt, die besagt, BestReferencedeclaredasreferencebutnotinitialized. Das klingt nach einem Hinweis: Sieht aus wie Sie es zu initialisieren müssen.

Ja, müssen Referenzen initialisiert werden. Wie der Name andeutet, Referenz bezieht sich auf eine andere Variable. Daher müssen Sie den Verweis zu initialisieren, so dass es auf eine andere Variable verweist, etwa so:

int ImSomebody-int BestReference = ImSomebody-

Nun, von diesem Punkt an, für immer bis zum Ende der Ewigkeit (oder zumindest so lange, wie die Funktion dieser beiden Linien läuft enthält), die Variable BestReference beziehen wird - das heißt, sein ein alias für - ImSomebody.

Und so, wenn Sie eingeben

BestReference = 10-

Dann werden Sie wirklich sein Einstellung ImSomebody bis 10. So nehmen Sie einen Blick auf diesen Code, der innerhalb einer gehen könnte Main():

int ImSomebody-int BestReference = ImSomebody-BestReference = 10-cout lt; lt; ImSomebody lt; lt; endl-

Wenn Sie diesen Code ausführen, sehen Sie die Ausgabe

10

Das heißt, Einstellung BestReference bis 10 verursachte ImSomebody Änderungen bis 10, die Sie sehen können, wenn Sie den Wert drucken aus ImSomebody.

Das ist, was ein Hinweis tut: Es auf eine andere Variable bezieht.

Da ein Verweis auf eine andere Variable verweist, dass bedeutet, dass Sie nicht einen Verweis auf nur eine Nummer haben kann, wie in INTX = 10. Und in der Tat hat die Codezeile in Verbindung gebracht: Sie sind nicht erlaubt, dies zu tun. Sie können nur eine Referenz, die auf eine andere Variable bezieht.

Menü