阅读量:0
- 常量成员函数:在类的成员函数声明和定义中使用const关键字,表示该函数不会修改对象的成员变量。这样的函数可以被常量对象调用。
class MyClass { public: void doSomething() const { // 不能修改成员变量 } };
- 重载操作符:在重载操作符函数中使用const关键字,避免修改对象的状态。
class MyClass { public: MyClass operator+(const MyClass& other) const { // 返回一个新的对象,不会修改当前对象 } };
- 访问器函数:如果函数只是返回对象的成员变量的值而不修改它们,应该使用const关键字。
class MyClass { public: int getValue() const { return value; } private: int value; };
- 避免错误修改:使用const关键字可以避免在函数内部错误地修改对象的成员变量。
void processObject(const MyClass& obj) { // obj.doSomething(); // 错误,const对象不能调用非const函数 int value = obj.getValue(); // 正确,调用const函数 }