引用
语法
int a=10;
int &b=a;
注意事项
- 引用必须初始化
- 引用初始化后,不可以改变
引用作函数参数
- 作用:函数传参时,可以利用引用的技术让形参修饰实参
- 优点:可以简化指针修改实参
#include<iostream>
using namespace std;
//1.值交换
void Swap1(int a,int b){
int temp=a;
a=b;
b=temp;
cout<<"a= "<<a<<endl;
cout<<"b= "<<b<<endl;
}
//2.地址传递
void Swap2 (int *a,int *b){
int temp=*a;
*a=*b;
*b=temp;
}
//3.引用传递
void Swap3(int &a,int &b){
int temp=a;
a=b;
b=temp;
}
int main(){
int a=10;
int b=20;
Swap1(a,b);//值传递,形参不会修饰实参
Swap2(&a,&b);//地址传递,形参会修饰实参
Swap3(a,b)//引用传递,形参会修饰实参
cout<<"a= "<<a<<endl;
cout<<"b= "<<b<<endl;
system("pause");
return 0;
}
引用作函数的返回值
- 不要返回局部变量的引用
- 函数的调用可以作为左值
引用的本质
- 引用的本质在C++内部实现是一个指针常量