LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 225|回复: 0

可变数据成员

[复制链接]
发表于 2024-2-3 23:12:29 | 显示全部楼层 |阅读模式
此关键字只能应用于类的非静态和非常量数据成员。 如果某个数据成员被声明为 mutable,则从 const 成员函数为此数据成员赋值是合法的。

语法

mutable member-variable-declaration;
备注
例如,以下代码在编译时不会出错,因为 m_accessCount 已声明为 mutable,因此可以由 GetFlag 修改,即使 GetFlag 是常量成员函数也是如此。

// mutable.cpp
class X
{
public:
   bool GetFlag() const
   {
      m_accessCount++;
      return m_flag;
   }
private:
   bool m_flag;
   mutable int m_accessCount;
};

int main()
{
}

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表