C++引用,本质上是一个指针常量;
而指针常量是指针指向不可改,指针指向的值可以改,
这也正好说明为什么引用不可更改!
一个例子 :
//发现是引用,自动转换为 int* const ref = &a;
void func(int& ref){
ref = 100; // ref是引用,转换为 *ref = 100
}
int main(){
int a = 10;
//自动转换为 int* const ref = &a;
int& ref = a;
ref = 20; //内部发现ref是引用,自动帮我们转换为: *ref = 20;
cout << "a:" << a << endl;
cout << "ref:" << ref << endl;
func(a);
return 0;
}