不久前,我遇到了一些使用mutable关键字标记类的成员变量的代码。据我所知,它只允许您在const方法中修改变量:classFoo{private:mutablebooldone_;public:voiddoSomething()const{...;done_=true;}};这是这个关键字的唯一用途,还是有更多的用处?从那以后,我在一个类中使用了这种技术,将boost::mutex标记为可变的,允许const函数出于线程安全的原因将其锁定,但是,老实说,感觉有点像hack。 最佳答案 它允许区分按位常量和逻辑常量。逻辑const