Miembros de datos mutables (C++)

Esta palabra clave solo se puede aplicar a los miembros de datos no estáticos y no constantes de una clase. Si se declara un miembro de datos mutable, después se permite asignar un valor a este miembro de datos desde una función miembro de tipo const.

mutable member-variable-declaration;

Comentarios

Por ejemplo, el siguiente código se compilará sin errores porque m_accessCount se ha declarado como mutable y, por tanto, se puede modificar con GetFlag aunque GetFlag sea una función miembro de tipo const.

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

int main()
{
}

Vea también

Referencia

Palabras clave de C++