假设我有
class A {
double a;
double Value() const {
return a;
}
double& Value() {
return a;
}
}
//later:
A foo;
double b = foo.Value();
现在,将调用非常量版本。 有没有一种强制使用 const 版本的好方法?我认为使用类型转换是可能的,但我认为这不是很优雅。
最佳答案
您可以将其转换为const
。
double b = static_cast<const A&>(foo).Value();
(我不认为我曾经显式地将 const
添加到变量中。我不确定 static_cast
是否比 const_cast
.)
关于c++ - 强制偏好 const 版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16841952/