c ++ primer 2.3.1说:一旦初始化,引用仍然与其初始对象绑定。无法重新绑定引用以引用其他对象。 但我的代码效果很好:
#include <iostream>
int main()
{
int a = 1, b = 2;
int &r = a;
r = b;
std::cout << r << std::endl;
return 0;
}
运行结果是:
2
答案 0 :(得分:7)
你没有重新绑定。相反,您已将b
的值指定为a
。
通过在该作业之前和之后打印出地址来自行检查:
std::cout << "a: " << &a << std::endl;
std::cout << "b: " << &b << std::endl;
std::cout << "r: " << &r << std::endl;