【发布时间】:2015-06-10 06:12:41
【问题描述】:
我有这个特定的代码示例:
struct ComplexNumber {
float _Re, _Im;
public:
float Re() const { return _Re; }
float& Re() { return _Re; }
float Im() const { return _Im; }
float& Im() { return _Im; }
};
我想知道为什么,当我表演时
ComplexNumber Num1;
cout << Num1.Re() << endl;
正在调用方法float& Re() { return _Re; },而不是
float Re() const { return _Re; } 似乎已经准备好通过使用 const 保护数据来执行 cout。
【问题讨论】:
-
我几乎可以肯定this question 和它的selected answer 描述了你所看到的。
标签: c++ methods reference constants