mutable关键字在C++中如何实现常量成员函数的修改能力

avatar
作者
筋斗云
阅读量:0

在C++中,使用mutable关键字可以实现常量成员函数的修改能力。当一个成员函数被声明为const时,表示该函数不能修改类的任何成员变量。但是如果某个成员变量被声明为mutable,则即使在const成员函数中也可以修改这个成员变量的值。

例如:

class Example { public:     void setValue(int value) const {         m_value = value; // Error: m_value is not mutable     }          int getValue() const {         return m_value;     }  private:     mutable int m_value; }; 

在上面的代码中,m_value被声明为mutable,所以即使在const成员函数中也可以修改它的值。这样就可以在const成员函数中修改某些临时状态或者缓存值,而不会影响类的其他成员变量。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!