目录
基本语法
引用做函数参数
引用做函数返回值
常量引用
基本语法
给变量取别名:数据类型 &别名 = 原名;
本质:指针常量(指针的指向不可改,指向的值可改)
int value = 10;
int &index = value; //引用取别名,index就是value
注意:
- 引用必须初始化
- 引用初始化后,不可以改变
引用做函数参数
函数传参时,利用引用让形参修饰实参,简化指针修改实参。
#include <iostream>
using namespace std;
void func(int &value)
{
value = 10;
}
int main(void)
{
int index = 20;
func(index);
//输出index值为:10,实参发生改变
cout << "index value:" << index << endl;
}
引用做函数返回值
- 不要返回局部变量的引用
- 函数的调用可以作为左值
#include <iostream>
using namespace std;
int & func(void)
{
static int value = 10;
return value;
}
int main(void)
{
int &indx = func();
cout << "indx value:" << indx << endl;
func() = 1000; //左值
cout << "indx value:" << indx << endl;
}
常量引用
使用const修饰形参,防止误操作,避免形参改变实参
#include <iostream>
using namespace std;
void func(const int & value)
{
value = 10; //不能修改
}
int main(void)
{
int a = 1200;
func(a);
}
推荐阅读:[C++核心编程](一):内存分区