这个声明表示任这个函数不会修改类中的数据成员。如果在编写const成员函数时,不慎修改了数据成员,或者调用了其它非const成员函数,编译器将指出错误,提高程序的健壮性。例子如下:
class complex
{
public:
complex();
void display() const;
void test();
private:
double real;
double imag;
};
如上例中 display(),若在定义中:
void complex::display()const
{
real = 5.5;//错误, 函数后加了const的,不可以对成员变量进行赋值.
cout << real << " " << imag << endl;
}