引用的定义
int &b=a;
//b即为a的引用 暨 b是a的别名 他两指向一块内存
引用必须初始化
int a=10;
int &b; //是错误的
int &b=a //才是正确的
函数返回引用(引用做函数返回值)
int& func()
{
static int a=10;//不能返回局部变量的引用 static 定义静态变量 存放于四区中的全局区;
return a;//函数返回的是一个名 可以赋值给引用 可作为左值来使用
}
int main()
{
int &a=func();
func()=100;
}
引用的本质是一个指针常量(int * const p=&a)
int & b=a;
//实质上相当于int *const b=&a;
b=100;
//实质上相当于 * b=100;
const修饰引用形参 防止函数体内修改引用指向的值
void printfunc(const int & a)
{
//a=100; 非法 引用常量禁止修改;
cout<<a<<endl;
}