今回は今すぐに必要なことではないのですが今後のために質問したいことがあります.
class BaseObject { public: virtual void Update()=0;//オブジェクト更新メソッド virtual void DrawUpdate()=0;//描画用更新メソッド virtual void DrawGraph()=0;//描画 };例えば上のような仮想クラスがあったとして,これを継承したクラス(例えばCとします)を作ります.
BaseObject *bo = new C();といったように作ります.
これを以下のようなオブジェクト更新タスク,描画用タスクに渡します
list<BaseObject*> ObjectTask;
list<BaseObject*> DrawTask;
ObjectTask.push_back(bo);
DrawTask.push_back(bo);
1つのクラスで様々なタスクに対応できる作りにします.
描画はしないけどオブジェクトは更新するという場合にはDrawTaskからだけ外します.
このときDrawTaskから外したとき,ObjectTaskでboを使うのは問題ないのでしょうか.
一応簡単なテストを行った時動作には問題なさそうでしたが問題点などがあった場合教えてください.
また,この方法を実際ゲームなどに組み込む時に問題がないか,別の方法などがあれば教えてください.
抽象的な質問ですがよろしくお願いします.