Heim > Backend-Entwicklung > C++ > Hauptteil

Der Unterschied zwischen der Übergabe von Werten und der Übergabe von Referenzen in C++-Funktionsparametern

王林
Freigeben: 2024-04-19 12:33:02
Original
1020 Leute haben es durchsucht

Die Übergabe von C++-Funktionsparametern verfügt über zwei Methoden: Wertübergabe und Referenzübergabe: Wertübergabe: Erstellen Sie eine Kopie der lokalen Variablen. Änderungen an der Kopie wirken sich nicht auf die Originalvariable aus. Übergabe als Referenz: Übergeben Sie die Referenz direkt an die Originalvariable, und Änderungen an der Referenzvariablen werden in der Originalvariablen widergespiegelt.

C++ 函数参数传递值和传递引用的区别

C++ Der Unterschied zwischen der Übergabe von Funktionsparametern als Wert und der Übergabe als Referenz

Übergabe als Wert

Wenn ein Funktionsparameter als Wert übergeben wird, wird eine Kopie der lokalen Variablen erstellt. Änderungen an dieser Kopie wirken sich nicht auf die Originalvariable aus.

Syntax:

void function(int value);
Nach dem Login kopieren

Übergabe als Referenz

Wenn ein Funktionsparameter als Referenz übergeben wird, wird die Referenz auf die Originalvariable direkt übergeben, anstatt eine Kopie zu erstellen. Änderungen an der Referenzvariablen werden in der Originalvariablen widergespiegelt.

Syntax:

void function(int& value);
Nach dem Login kopieren

Praktisches Beispiel

Betrachten Sie die folgende Funktion:

void swap(int& a, int& b) {
  int temp = a;
  a = b;
  b = temp;
}
Nach dem Login kopieren

Diese Funktion übergibt zwei ganze Zahlen als Referenz. Wenn die Funktion also den Wert von ab austauscht, ändert sie auch die ursprüngliche Variable in der Hauptvariable Funktion.

Verwendungsbeispiel:

int main() {
  int x = 5, y = 10;
  swap(x, y); // 交换 x 和 y 的值
  cout << x << ", " << y << endl; // 输出交换后的值
  return 0;
}
Nach dem Login kopieren

Ausgabe:

10, 5
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonDer Unterschied zwischen der Übergabe von Werten und der Übergabe von Referenzen in C++-Funktionsparametern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!