我沒有在SO上找到與mutable const
相關的任何主題。我已經將代碼減少到最小工作代碼(在Visual Studio上)。如果我們取消註釋//*data = 11;
,編譯器會抱怨const_ness。我想知道mutable const
是如何工作的。什麼是可變常量?
class A
{
public:
void func(int & a) const
{
pdata = &a;
//*pdata = 11;
}
mutable const int * pdata;
};
int main()
{
const A obj;
int a = 10;
obj.func(a);
}
這段代碼看起來很像廢話...... – deviantfan
我缺乏在示例中加入更多意義的能力。 –
[這會更有趣一個例子。](http://ideone.com/g2ACsP)注意我們如何修改const對象中的成員。 – user4581301