Изменяемые элементы данных (C++)
Данное ключевое слово может применяться только к элементам и не являющимся константными данных не статического класса.Если элемент объявлен данных mutableпосле этого он допустим для присвоения значения к данному элементу данных из a Const функция-член.
mutable member-variable-declaration;
Заметки
Например, следующий код будет компилироваться без ошибок, поскольку m_accessCount объявляет, что быть mutableи поэтому может быть изменено by GetFlag даже если GetFlag функцию-член const.
// mutable.cpp
class X
{
public:
bool GetFlag() const
{
m_accessCount++;
return m_flag;
}
private:
bool m_flag;
mutable int m_accessCount;
};
int main()
{
}