ゲームプログラミング相談室【Part6】
■ このスレッドは過去ログ倉庫に格納されています
0883名前は開発中のものです。
2006/03/01(水) 03:14:04ID:IPZ1L++yキャストが要るようになったらプログラムが間違ってるのを疑えよ。
なんで仮想関数で得られる型安全を自ら壊すような「タスクシステム」に
こだわるんだ?そんなシステム要らない。
↓これでいいんじゃないの。
class State {
public:
virtual void update() = 0;
};
class State1 : public State {
public:
State1() : m_update_task(&State1::begin_task) {}
void update() { (this->*m_update_task)(); }
private:
void (State1::*m_update_task)();
void begin_task() { m_update_task = &State1::task1; }
void task1() {}
};
■ このスレッドは過去ログ倉庫に格納されています