まだテスト/コンパイルしていないという問題があり、それが可能かどうか、また設計が悪いかどうか疑問に思っていますか?
私の問題:
抽象基本クラス A と抽象派生クラス B が必要です。
これが可能であれば、各クラスに多数の純粋仮想メンバー関数があり、これらのオブジェクトを初期化することもできませんが、それは抽象クラスの場合です。
私の設計では、別の派生クラス C を作成し、それを初期化します。クラス C はクラス B から派生します。
私はこのように見えるものを持っているでしょう
class C
^
|
abstract class B
^
|
abstract base class A
私の質問:
これはまず可能ですか?私はそう思うでしょうが、クラス B の A で純粋仮想関数を宣言しないのは面倒なのでしょうか?
元
class A {
public:
virtual void test()=0;
};
class B: public A {
public:
virtual void test()=0;
virtual void anotherTest()=0;
};
上記でよろしいでしょうか?
これは悪い C++ 設計ですか? 将来的には A からクラスを派生させる予定なので、このデザインがあればいいのにと思います。