1. ホーム
  2. c++

[解決済み】C++ 派生クラス内の関数に対する "virtual "キーワード。必要ですか?

2022-04-01 03:47:37

質問

以下のような構造体の定義がある場合、...

struct A {
    virtual void hello() = 0;
};

アプローチその1

struct B : public A {
    virtual void hello() { ... }
};

アプローチその2

struct B : public A {
    void hello() { ... }
};

この2つの方法でhello関数をオーバーライドすることに違いはあるのでしょうか?

どのように解決するのですか?

全く同じです。 最初のアプローチの方がより多くのタイピングを必要とし、より明確である可能性があること以外、両者に違いはありません。