class { ... void print(); void print() const; //在定义时,后面也需加const };
1、const函数 和 非const函数 是重载函数;
2、调用的时候怎么确认调用的是哪一个呢?
(1)非const对象,优先调用的是非const函数,如果非const函数不存在,则调用const函数
(2)const对象,只能调用const函数。
const成员函数内部,不能调用非const成员函数(可以调用类成员变量,但不能对其进行修改操作,mutable修饰的数据成员不受此限制)。