以此方法声明为例:
const Vector Vector::operator - ( const Vector& other ) const;
我知道第二个const使Vector作为参数传递为不可变的,并且最后一个const声明该方法不会更改Vector类的当前实例....
const
到底意味着什么呢?答案 0 :(得分:8)
这是一种过时的安全措施,可以防止像a - b = c
这样的无意义代码进行编译。
(我说“过时”,因为它会阻止只适用于非常量右值的move semantics。)
答案 1 :(得分:4)
第一个const表示此运算符将返回一个常量Vector对象。
答案 2 :(得分:0)
这意味着返回值为const Vector
。
它具有更多意义,例如:const int& Vector::get(int index) const;