https://qiita.com/eierapfel/items/ddce6f35871484ff794c mutableを付けることで、constメンバ関数内でもメンバ変数を変更できていることが分かる。 ------------------------------------- 3_const_mutable.cpp #include class ClassA { public: explicit ClassA(int x, int y) : x_(x), y_(y){}; void testFunc() const; int getX() { return x_; }; int getY() { return y_; }; private: mutable int x_; // この変数は、constメンバ関数 int y_; }; void ClassA::testFunc() const { std::cout << __func__ << std::endl; x_ = 4; // y_ = 3; // コンパイルエラー } int main(int argc, char* argv[]) { std::cout << "3_const_mutable.cpp" << std::endl; ClassA cc(1, 2); cc.testFunc(); std::cout << "x : " << cc.getX() << std::endl; std::cout << "y : " << cc.getY() << std::endl; ==============================