私はゲーム/シミュレーションに取り組んでおり、ゲーム内のすべてのクリーチャーを管理しています。基本クラスの Creature が 1 つあり、そこからさまざまな種類のクリーチャーが継承されます。
このコードの初期のバージョンでは、基本クラスを任意のクリーチャーのジェネリックとして単独で使用していましたが、ゲームに存在するすべてのクリーチャーの電話帳を保持するプライベートな静的ベクトルがありました。これはクリーチャーのコンストラクタによって処理され、新しいクリーチャーのアドレスがスタックに追加されました。十分に単純です。
私がメンタルブロックを感じているのは、継承を導入するときです。Creature クラスを基本クラスに適合させ (ベクトルを保護された状態に移動すると思いますか?)、そこから Monkey、Bear、Tiger の任意の子クラスを定義すると... Creature を継承するクラスは、Creature 親クラスのポインター ベクトルにも追加されますか? おそらくもっと直接的に言えば、これらの子クラスのいずれかのインスタンスを作成すると、親クラスのコンストラクターも呼び出されるのでしょうか?
私は正しい考えを持っていますか、またはこの行動を達成するために何をしなければなりませんか? 必要に応じて、より具体的な詳細を提供できます。
ありがとう。
--
このように物事を行う背後にある私の考えは、一例としてグラフィックスです。そうすれば、存在するすべてのクリーチャーを循環し、ポリモーフィズムを介して各クリーチャーの関数を呼び出して、スプライトや XY 位置などを返すことができます。