引用不是新定义一个变量,而是给已存在的变量取一个别名,编译器不会为引用变量开辟内存空间,它和它引用的变量共用一块内存空间。
比如:李逵,在家称为铁牛,江湖人称黑旋风;这三个名字都代表了同一个人;
使用方法:
类型& 引用变量名(对象名)= 引用实体;
int main()
{
int a = 10;
int& ra = a;
cout << a << endl;
cout << ra << endl;
return 0;
}
注意:引用类型必须和引用实体必须是同种类型;
1.引用时必须初始化
int main()
{
int a = 10;
//错误示范
//int& ra;
//正确使用
int& ra = a;
return 0;
}
2.一个变量可以有多个引用
int main()
{
int a = 10;
//都是a的别名
int& ra = a;
int& rra = ra;
return 0;
}
3.引用一旦引用一个实体,就不能引用其他实体
int main()
{
int a = 10;
int b = 20;
int& ri = a;
//并不是将ri修改为b的别名
//而是将b赋值给ri,也就是赋值给a
ri = b;
return 0;
}
1.做参数
//left和right皆是实参的别名,可以直接对实参进行修改
void swap(int& left, int& right)
{