C++ 函数引用调用
将参数传递给函数的引用调用方法会将参数的引用复制到形式参数中。在函数内部,该引用用于访问调用中使用的实际参数。这意味着对参数的更改会影响传递的参数。
要通过引用传递值,参数引用会像任何其他值一样传递给函数。因此,您需要将函数参数声明为引用类型,如以下函数 swap() 所示,该函数交换其参数指向的两个整型变量的值。
// 函数定义用于交换值。 void swap(int &x, int &y) { int temp; temp = x; /* 将值保存在地址 x */ x = y; /* 将 y 放入 x */ y = temp; /* 将 x 放入 y */ return; }
现在,让我们通过引用传递值来调用函数 swap(),如下例所示 -
#include <iostream> using namespace std; // 函数声明 void swap(int &x, int &y); int main () { // 局部变量声明: int a = 100; int b = 200; cout << "交换之前,a 的值:" << a << endl; cout << "交换之前, b 的值:" << b << endl; /* calling a function to swap the values using variable reference.*/ swap(a, b); cout << "交换后,a 的值:" << a << endl; cout << "交换后,b的值:" << b << endl; return 0; }
当将上述代码放在一个文件中、进行编译和执行时,它会产生以下结果 -
交换之前,a 的值:100 交换之前, b 的值:200 交换后,a 的值:200 交换后,b的值:100