Membri dati modificabili (C++)
Questa parola chiave può essere applicata solo a non statici e ai membri dati non const di una classe.Se un membro dati viene dichiarato mutable, quindi è valida assegnare un valore al membro dati da un oggetto const funzione membro.
mutable member-variable-declaration;
Note
Ad esempio, il seguente codice verrà compilato senza errori perché m_accessCount è stato dichiarato come mutablee pertanto può essere modificato da GetFlag anche se GetFlag è una funzione membro const.
// mutable.cpp
class X
{
public:
bool GetFlag() const
{
m_accessCount++;
return m_flag;
}
private:
bool m_flag;
mutable int m_accessCount;
};
int main()
{
}