函数的参数传递 指的是形参与实参结合的过程,其基本方式包括值传递和引用传递两种。
值传递
该方法把参数的实际值复制给函数的形式参数。在这种情况下,修改函数内的形式参数对实际参数没有影响
#include<iostream>
using namespace std;
void swap(int a,int b){ //定义空函数 swap,用于交换 a 和 b 的值。
int t=a; //定义中间变量 t,并将 a 的值赋给变量 t。
a=b; //将 b 的值赋给 a。
b=t; //将 t 的值赋给 b,又因为 t=a,所以把 a 的值赋给 b。
}
int main(){
int x=3;
int y=4;
cout<<"x="<<x<<","<<"y="<<y<<endl; //输出 x、y。
swap(x,y); // 调用 swap 函数。
cout<<"x="<<x<<","<<"y="<<y<<endl; //输出调用函数后 x、y 的值。
}
引用传递
使用引用传递,需要在定义函数时,在参数前加上符号 &,该方法把参数的引用复制给形式参数,修改形式参数会影响实际参数。
#include<iostream>
using namespace std;
void swap(int &a,int &b){ //定义空函数 swap,用于交换 a 和 b 的值。
int t=a; //定义中间变量 t,并将 a 的值赋给变量 t。
a=b; //将 b 的值赋给 a。
b=t; //将 t 的值赋给 b,又因为 t=a,所以把 a 的值赋给 b。
}
int main(){
int x=3;
int y=4;
cout<<"x="<<x<<","<<"y="<<y<<endl; //输出 x、y。
swap(x,y); // 调用 swap 函数。
cout<<"x="<<x<<","<<"y="<<y<<endl; //输出调用函数后 x 和 y 的值。
}