1) 函数名前加const
const int Func() {}
含义:返回值不可修改
2) 函数名后加const
int Func const () {}
含义:const修饰的是类函数隐藏的第一个参数 this指针,这表明this指针只读,也即类成员不可修改
注意该用法只能是成员函数,要是类的静态函数或者是非成员函数就不可以在函数名后面加上const
应用场景:当该类的实例被声明为const时,通过该实例调用成员函数时,如果被调用的函数名后没有const,则会报错,不然编译器会认为函数调用可能会修改类成员,与前面对类实例的const声明产生冲突
参考:
http://www.iteblog.com/archives/214