1、将变量名作为实参和形参:
这时传给形参的是变量的值,传递是单向的。如果在执行函数期间形参的值发生变化,并不传回实参。应为在调用函数时,形参和实参不是同一个存储单元。
2、传递变量的指针:
形参是指针变量,实参是一个变量的地址,调用函数时,形参指向实参变量单元。可以通过形参指针修改实参的值。
3、c++提供了传递变量的引用。
形参是引用变量,和实参是一个变量,调用函数时,形参指向实参变量单元。可以通过形参修改实参的值。
ps:引用就相当于变量的第二个标签。
eg:
#include<iostream>
using namespace std;
void swap(int &x,int &y);
int main(){
int a=100;
int b=200;
cout<<"before swap,a:"<<a<<endl;
cout<<"before swap,b:"<<b<<endl;
swap(a,b);
cout<<"after swap,a:"<<a<<endl;
cout<<"after swap,b:"<<b<<ednl;
return 0;
}
void swap(int &x,int &y){
int temp;
temp=x;
x=y;
y=temp;
}
交换前,a 的值: 100
交换前,b 的值: 200
交换后,a 的值: 200
交换后,b 的值: 100
c++增加引用类型,主要是把它作为函数参数,以扩充函数传递数据的功能