引用变量的说明:
1.引用的作用是给变量起别名,可以当做变量来用.只能在引用初始化的时候给引用变量赋值
2.引用的本质是弱化的指针,因为只能在引用初始化的时候给引用变量赋值,所以相当于,指针只能在最开始赋值的时候把变量地址赋值给引用变量,之后就不能再更改指针变量的地址了.
引用变量的格式:
数据类型 & 变量名 = 变量;// 引用变量必须在定义的时候就用 = 变量, 来初始化,因为初始化以后就不能赋值了,所以必须在定义的时候就赋值.
int a = 3;
int b = 4;
int &refA = a;
refA = 10;
// &refA = 4;//错误,引用变量除了初始化,不能再赋值新的变量地址
refA = b;//这个相当于是 a = b,并不是把引用变量赋值了新的值.
cout << refA <<endl;
引用变量作为函数形参的好处
可以当做指针形参来用,函数体里面改变形参的值,形参在函数外面也跟着改变,但是却不用像指针那样操作多写一个 * 星号.如下:
指针变量作为形参如下,作用是交换函数:
//形参是用指针操作,需要多写一个*,引用变量就能省略*
void swapP (int *a, int *b){
int temp = *a;
*a = *b;
*b = temp;
}
//调用代码
swapP(&c, &d);//调用形参是指针的函数,需要传入变量地址
调用引用变量形参的函数,函数体内可以少些一个*型号
//形参是用指针操作,需要多写一个*,引用变量就能省略*
void swapP (int *a, int *b){
int temp = *a;
*a = *b;
*b = temp;
}
swap(c, d);//调用形参是引用变量的函数