在成员函数中圆括号之后所带的关键字const表明,在该函数中不能改变类中的数据成员的值。带const的函数称为常量成员函数。下面就是个错误例子,说明const的作用:class a{int a;public:void disp() const{a=4};//a=4错误};
通过把类成员函数声明为const 以表明它们不修改类对象。任何不会修改数据成员的函数都应该声明为const类型。如果在编写const成员函数时,不慎修改了数据成员,或者调用了其它非const成员函数,编译器将指出错误,这样做的好处是提高程序了的健壮性。
表示常成员函数常对象只能调用常成员函数,常成员函数不允许修改类中数据成员(除加mutable 修饰词例外);此常成员函数隐含一个常量this指针。
加了const说明这个函数不可以修改类的成员变量(或者说不可以改变对象的内部状态)。