首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >除了允许变量被const函数修改以外,'mutable'关键字还有其他用途吗?

除了允许变量被const函数修改以外,'mutable'关键字还有其他用途吗?

提问于 2017-12-13 11:03:57
回答 2关注 0查看 198

前一段时间,遇到了一些代码,用mutable关键字标记了一个类的成员变量。据我所见,它只是允许你修改一个const方法中的变量:

代码语言:txt
复制
class Foo  
代码语言:txt
复制
{  
代码语言:txt
复制
private:  
代码语言:txt
复制
    mutable bool done_;  
代码语言:txt
复制
public:  
代码语言:txt
复制
    void doSomething() const { ...; done_ = true; }  
代码语言:txt
复制
};

这是这个关键字的唯一用途,还是有更多的比它满足眼睛?我已经在一个类中使用了这种技术,标记boost::mutex为可变的,允许const函数为了线程安全的原因锁定它,但是,说实话,这感觉就像一个黑客。

相关文章

相似问题

相关问答用户
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档