这里的const有什么作用?
const Object myFunc(){
return myObject;
}
我刚开始阅读《Effective C++》,其中第3条建议使用const,同时谷歌搜索也提到了一些类似的建议,但也有反例。我无法理解在这里使用const会比不使用更好。假设我们希望返回值,保护返回值似乎没有任何理由。为什么要这样做的一个例子是防止返回值被意外地转换成bool类型。实际上,问题在于应该使用explicit关键字来防止隐式的bool转换。在这里使用const可以防止未经分配使用临时对象。因此,我无法对这些对象执行算术表达式。似乎没有任何情况下未命名的const会有用。
使用const带来了什么好处?在什么情况下使用它更好呢?
编辑:将算术示例更改为任何在赋值之前可能要执行的修改对象的函数。