值传递 地址传递 引用传递
注意:
1、不要返回局部变量的引用
2、如果函数返回值是引用,那么函数的调用可以作为引用
3、不能有NULL引用,必须确保引用是和一块合法的存储单元关联
4、引用必须初始化
int a = 10;
int& aRef = a; 编译器自动转换为 int* const aRef = &a; 这也能说明为什么必须初始化
aRef = 20; 内部发现Aref是引用,自动帮我们转换为 *aRef = 20;
值传递 地址传递 引用传递
注意:
1、不要返回局部变量的引用
2、如果函数返回值是引用,那么函数的调用可以作为引用
3、不能有NULL引用,必须确保引用是和一块合法的存储单元关联
4、引用必须初始化
int a = 10;
int& aRef = a; 编译器自动转换为 int* const aRef = &a; 这也能说明为什么必须初始化
aRef = 20; 内部发现Aref是引用,自动帮我们转换为 *aRef = 20;