void test9()
{
int a = 10;
int &b = a;
cout << "a = " << a << endl;
cout << "b = " << b << endl;
// a = 10
// b = 10
b = 20;
cout << "a = " << a << endl;
cout << "b = " << b << endl;
// a = 20
// b = 20
}
2. 引用的注意事项
void test10()
{
int a = 10;
int b = 20;
// int &c; // 错误,引用必须要初始化
int &c = a; // 一旦初始化后,就不可以更改引用
c = b; // 这个是赋值操作,不是更改引用
// &c = b; // 不能操作指针,更改引用
}
void test11(int a, int b)
{
int temp = a;
a = b;
b = temp;
// 值传递,不会改变外面的值
}
void test12(int *a, int *b)
{
int temp = *a;
*a = *b;
*b = temp;
// 地址传递,会改变外面的值
}
void test13(int &a, int &b)
{
int temp = a;
a = b;
b = temp;
// 引用传递,会改变外面的值
}