首页 > 解决方案 > C++ - 使指向对象成为对象常量的一部分

问题描述

class SomeClass{

private:
    int* p;

public:
    SomeClass() {p = new int();}

    void foo() const {*p = 20;}

};

//...

const SomeClass obj;
obj.foo();

假设我将指向对象视为类常量的一部分。我有什么方法可以确保它没有在 const 函数中被修改(除了不要忘记它)?(不,我不是说成功const int*

标签: c++constantsimmutabilityc++17mutable

解决方案


推荐阅读