代码点读机 / C++ / mutable

mutable C++ · 关键字

成员变量修饰符,允许在 const 成员函数或 const 对象中修改该成员;常用于内部缓存、计数器这类不影响对象逻辑状态的值。

怎么用

mutable 类型 成员名;

小例子

class 日志 {
  mutable int 计数 = 0;
public:
  void 写() const { 计数++; }
};

编译结果

const 成员函数里 计数 可以自增

提醒:不要用它绕过 const 的正确语义;逻辑状态不该变的才适合 mutable

官方文档:https://en.cppreference.com/w/cpp/language/cv

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← C++全部词条