类的成员函数后面加const,表明这个函数不会对这个类对象的数据成员(非静态数据成员)作任何改变。
常函数:
成员函数后加const后称为常函数;常函数不可以修改成员属性;成员属性声明时加关键字mutable后,依然可以修改。
常对象:
声明对象前加const;常对象只能调用常函数。
同时定义两个函数,一个带const,一个不带,会有什么问题?
顶层const不可以用于重载,底层const可以用于重载,成员函数参数后面的const修饰的是this指针指向的对象,所以这是一个底层const,可以用于重载。