これが私の問題です。const
変更できない(他の誰かのコードで宣言されている)外部関数を使用し、宣言されていないとして宣言されたメンバー関数を使用してクラスを作成しましたconst
。より正確に
他の誰かのコード
class B {
public:
void foo();
};
私のコード
class A : public B {
public:
void bar() const {
this->foo();
}
};
mutable
メンバーデータの場合、またはを使用してconst-correctnessを強制できることを知っていconst_cast
ます。foo
他の誰かのコードで宣言されていなくても、コンパイラがconstであるかのように使用したいことをコンパイラが理解できるように、どうすれば「ハッキング」できますか?