だから私はかなりの階層で取り組んでいるプロジェクトを持っています。この基本クラスには、すべての派生クラスで呼び出される関数 reset() があります。私が混乱しているのは、派生クラスのこのリセットは基本的にプライベート変数をリセットし、前の(上位)クラスの reset() 関数を呼び出すだけなので、リセット関数は仮想でなければならないのですか?
例えば。
class Base
{
private:
int some;
public:
void reset();
};
class Derive : public Base
{
private:
int some1;
public:
void reset();
};
class Derive_two : public Derive
{
private:
int some2;
public:
void reset();
};
したがって、基本的に Derive_two クラスのリセット関数は次のようになります。
void Derive_two::reset()
{
some2 = 10;
Derive::reset();
}
このコードは正しいですか?または、関数 reset() は virtual 型である必要がありますか?
どんな助けでも大歓迎です、ありがとう。