をチェーンC++多重継承とコンストラクタはfooとバズ、すなわちから継承するクラスワルドを、考えてみましょう:これは機能しますか?
class Waldo : public Foo, public Baz {
...
};
私はワルドの新しいインスタンスを作成する場合:
Waldo *w = new Waldo;
はFooの操作を行うと、 Bazのコンストラクタが呼び出されますか?デフォルトで呼び出されていない場合は、Waldoコンストラクタの宣言または宣言で簡単に呼び出すことができますか?
は(私はコンストラクタチェーンをやろうとすることができる、およびC++は、伝えられるところでそれをしていないように見えます。私はよく分からない。)
私は何をしようとしていることは、さまざまなクラスは、「注釈を付ける」ですアノテーションがアノテーションされたクラスのインスタンスを、アノテーションクラスによって維持されるリストにリンクさせる(他のものの中でも)。これは、例えば、Baz-natureを持つすべてのオブジェクトのリストを歩き、特定の操作を適用し、Baz-natureを持つオブジェクトのリストにインスタンスを追加することを覚えていたかどうかを心配する必要はありません。コンストラクタは自動的にそれを行いました。
注:ここでは 'new'の使用は偽であり、' Waldo w; 'と'Waldo'が作られるでしょう。 –