Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- template<typename OBJ, typename MFP, typename RET>
- class StateCallback
- {
- private:
- MFP memberFun;
- OBJ object;
- RET ret;
- StateCallback() { }
- public:
- StateCallback(OBJ object, MFP memberFun) : object(object), memberFun(memberFun), ret(ret) { }
- RET operator ()() { return ((object)->*(memberFun))(); }
- };
- //Usage example
- StateCallback<CGameManager*, StateMemFunPtr, bool> game(this, &CGameManager::RunGame);
- states.push(game);
- while(states.size())
- {
- StateCallback<CGameManager*, StateMemFunPtr, bool> a = states.top();
- a();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement