ゲームにおけるデータ構造・クラス設計・パターンat GAMEDEVゲームにおけるデータ構造・クラス設計・パターン - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト195:issei 07/01/27 22:48:39 +PYaC1IQ >>193 > まったく同じ汎用的なインターフェイスを複数のエンティティへ公開したいとしても > いちいち別の実装とインターフェイスを設けなくてはならなくなる。 そうですね。 ただ、純粋仮想関数のプロトタイプが同じなら実装は一つで済むから、ヘッダ ファイルをメンテするのが多少面倒って程度です。 struct ICtxEnemy { virtual void createShot() = 0; }; struct ICtxField { virtual void createShot() = 0; }; class Manager : public ICtxEnemy, public ICtxField { virtual void createShot(); }; // これで実装は両方に提供できる このスキーム使って仕事で RPG のリアルタイム戦闘を作ってたんだけど、面倒で 手に負えないって状況には至らなかった。むしろインターフェースごとに公開する 関数が限定されていたから、仕様変更時にチェックが短期間で済んだ感じ。細かい 数字を残してないから、具体的に何パーセント改善とは言えないけどさ。 汎用的なインターフェースをどうするかってのは悩みどころだけど、やりたければ sturct ICtxEnemy { virtual ICtxCommon& getCommonCtx() = 0; }; とかかなぁ。私は汎用インターフェースは結局作らずシングルトンで済ませちゃった けど。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch