私が最初のクラスを持っているとしましょう
class Walker {
public:
Walker();
virtual ~Walker();
virtual void Step();
};
次に、前者から派生した2番目のもの
class Mecha : public Walker {
public:
Mecha();
virtual ~Mecha();
private:
virtual void Step();
};
そのprivate
修飾子はStep()
役に立ちますか?Mecha::Step()
としてまだ呼び出すことができWalker::Step()
ますね。サブクラスの定義を通じてスーパークラスの性質を変更しようとしているときに、警告が表示されるべきではありませんか?