基本クラス foo があるとします
class foo {
virtual int get() const = 0;
}
おそらく 20 のサブクラス foo_1、foo_2 ... foo から継承され、次の形式になります。
class foo_1 : public foo {
int get() const { return 1; }
}
...
class foo_20 : public foo {
int get() const { return 20; }
}
突然、人生はそれほど簡単ではありません!これを行う必要があるクラス foo_21 があります。
class foo_21 : public foo {
int get() { member_ = false; return 0; }
bool member_;
}
問題は、get が基底クラスで const として宣言されていることであり、サブクラス foo_21 で何かを変更する必要があります。どうすればそれを回避する方法を見つけることができますか?