这篇短文整理 C++ 中 const 出现在函数签名不同位置时的含义,便于区分成员函数的只读约束和返回值的只读约束。
成员函数末尾的 const
放在成员函数参数列表之后的 const,表示该成员函数不会修改所属对象的成员变量,只能读取成员,不能写入;同时返回值也不能被修改。
void func()const //函数func不能修改成员,只能访问,不能写入,并且返回值不能被修改
返回值前的 const
放在返回类型前面的 const,表示返回值是只读的,调用方拿到的返回值不能被修改。const int 和 int const 两种写法含义相同。
const int getPositionX() // 返回的值 不能被修改,只读
int const getPositionX() //一样