C++ Übergeben von Referenzen als Parameter
Wir haben bereits besprochen, wie man Zeiger verwendet, um Call-by-Reference-Funktionen zu implementieren. Das folgende Beispiel verwendet Referenzen, um Call-by-Reference-Funktionen zu implementieren.
Beispiel
#include <iostream>
using namespace std;
// Funktionsdeklaration
void swap(int& x, int& y);
int main ()
{
// Deklaration lokaler Variablen
int a = 100;
int b = 200;
cout << "Vor dem Tausch, Wert von a:" << a << endl;
cout << "Vor dem Tausch, Wert von b:" << b << endl;
/*Rufe die Funktion auf, um Werte zu tauschen*/
swap(a, b);
cout << "Nach dem Tausch, Wert von a:" << a << endl;
cout << "Nach dem Tausch, Wert von b:" << b << endl;
return 0;
}
// Funktionsdefinition
void swap(int& x, int& y)
{
int temp;
temp = x; /*Speichere den Wert an Adresse x*/
x = y; /*y an x zuweisen*/
y = temp; /*x an y zuweisen*/
return;
}
Wenn der obige Code kompiliert und ausgeführt wird, liefert er die folgenden Ergebnisse:
交换前,a 的值: 100 交换前,b 的值: 200 交换后,a 的值: 200 交换后,b 的值: 100Weitere Erweiterungen