//引用的本质 //本质 : 引用的本质在C++内部实现是一个指针常量 #if(0) #include //发现是引用,替换为 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; std::cout << "a : " << a << std::endl; std::cout << " ref : " << ref << std::endl; func(a); system("pause"); return 0; } //C++推荐引用技术,因为语法方便,引用本质是指针常量,但是左右的指针操作编译器都帮我们做了 #endif