cpp / beginner
Snippet
Referenzen als Aliasse
Eine Referenz ist ein Alias (alternativer Name) für eine existierende Variable. Im Gegensatz zu Zeigern können Referenzen nicht null sein und müssen bei der Erstellung initialisiert werden. Verwenden Sie das &-Symbol sowohl in der Deklaration als auch in Funktionsparametern. Wenn Sie eine Referenz ändern, ändern Sie die ursprüngliche Variable. Referenzen sind sicherer als Zeiger und machen den Code lesbarer.
snippet.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>void doubleValue(int& ref) {ref = ref * 2;}int main() {int original = 10;int& alias = original;std::cout << "Original: " << original << std::endl;std::cout << "Alias: " << alias << std::endl;alias = 20;std::cout << "After changing alias: " << original << std::endl;doubleValue(original);std::cout << "After doubleValue: " << original << std::endl;return 0;}
Erklärung
1
int& alias = original;
Erstellt Referenz-Alias, das auf die Originalvariable verweist
2
alias = 20;
Ändern des Alias ändert auch das Original, da sie sich Speicher teilen
3
void doubleValue(int& ref) {
Referenzparameter erlaubt der Funktion die Variable des Aufrufers direkt zu ändern
4
ref = ref * 2;
Ändert die Originalvariable in main durch die Referenz
5
doubleValue(original);
Übergibt Original an die Funktion, die es durch die Referenz verdoppelt