1.按引用传参
在编码中,存在一件很尴尬的事情,就是我在主函数设的变量在子函数没办法用了!!!
如:交换a和b的值
#include<iostream>
using namespace std;
void huan(int c,int d)
{
int e=c;
c=d;
d=e;
}
int main()
{
int a=1,b=2;
huan(a,b);
cout<<a<<" "<<b;
}
结果为1 2
因为主函数设的变量a,b与子函数设的变量c,d是毫无关系的。
这里可以用到&。
#include<iostream>
using namespace std;
void huan(int &c,int &d)
{
int e=c;
c=d;
d=e;
}
int main()
{
int a=1,b=2;
huan(a,b);
cout<<a<<" "<<b;
}
结果为2 1
2.函数体内引用作为别名
#include<iostream>
using namespace std;
int main()
{
int a=6;
int &b=a;
a++;
cout<<a<<'\n'<<b;
}
输出为
7
7
这里将b声明为对a的引用,a与b视为等价且数据相同、
注意:b在定义时必须初始化,否则会导致语法错误。