富豪的にはありなんだろうけど…。 今俺本当に日本語書けてる?
以下、俺の思い浮かべる評判の悪いクラス設計の例。 「is a」ぐらいは守ってる?
vector<Obj *> ObjArray;
class Obj
{
  virtual void Update()
  {
    Move();
  }
  virtual void Move(){/*実装*/}
};
class EnemyObj :Obj
{
  virtual void Fire(){/*実装*/}
  void Update()
  {
    Move();
    Fire();
  }
};
class EnemyA :EnemyObj
{void Fire(){/*ユニークな実装*/} void Move(){/*ユニークな実装*/}};
class Barrier :Obj
{
  bool IsTouch(Obj tgt){/*実装*/}
  void Update()
  {
    Move();
    foreach(vector<Obj *>,tgt,ObjArray)IsTouch(Obj tgt);//foreachの構文が今ググったら違った!?
  }
};