Modyfikowalne elementy członkowskie danych (C++)

To słowo kluczowe można stosować tylko do składowych danych innych niż statyczne, niestatyczne i nieprzywołacyjne dla klasy. Jeśli element członkowski danych jest zadeklarowany mutable, jest to legalne, aby przypisać wartość do tego elementu członkowskiego z funkcji składowej const .

Składnia

mutable member-variable-declaration;

Uwagi

Na przykład poniższy kod zostanie skompilowany bez błędu, ponieważ m_accessCount został zadeklarowany GetFlag jako mutable, i dlatego można go zmodyfikować, mimo że GetFlag jest funkcją const member.

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

Zobacz też

Słowa kluczowe