一、引用的作用及语法
作用:给变量起别名
语法:数据类型 &别名 = 原名;
注意事项:
- 引用必须初始化
- 初始化之后,不可以改变
1.引用 作为 函数参数
作用:函数传递参数时,可以利用引用的技术让形参修饰实参
优点:可以简化指针修改实参
2.引用 作为 函数返回值
函数的调用可以作为左值
e.g.
Int &test02()
{
Static int a = 10;
Return a;
}//此时test02仍然是10(可以视test02是a的引用)
Test02() = 1000;//此时test02是1000(可以视为a已被修改)
注意:不要返回局部变量引用
二、引用的本质
引用的本质在c++内部实现是一个指针常量 int * const p = &a;
意味着p是a的引用,即int &p = a;
三、常量引用
作用:常量引用主要用来修饰形参,防止误操作
在函数形参列表中,可以加const修饰形参,防止形参改变实参
e.g.
Void show_value(const int &val)
{
val += 10;//由于形参加了const,因此这行错误,不会因为操作了val而修改了a
Cout << val <<endl;
}
Int main()
{
Int &ref = 10;//本行错误,因为引用本身需要一个合法的内存空间
Const int &ref = 10;
//加入const后就行了,编译器优化代码,int temp = 10; const int &ref = temp;
Ref = 100;//本行错误,此时ref不能再修改,已经是常量
Int a =100;
show_value(a);
Return 0;
}