请教下C++中的method用法,谢谢!
请教下一下代码的定义是怎么回事,感觉像mutexLocker这样的定义,就是为了这个函数执行完,回收一些东西,可是有一些不明白的地方,请帮忙指点下,谢谢了!
(不明白的地方,红色已标出,谢谢!)
struct AwesomeEvent : public TimedEventQueue::Event {
AwesomeEvent(
AwesomePlayer *player,
void (AwesomePlayer::*method)())
: mPlayer(player),
mMethod(method) {
}
protected:
virtual ~AwesomeEvent() {}
virtual void fire(TimedEventQueue *queue, int64_t /* now_us */) {
(mPlayer->*mMethod)(); ///这里的fire有什么作用
}
private:
AwesomePlayer *mPlayer;
void (AwesomePlayer::*mMethod)();
AwesomeEvent(const AwesomeEvent &);///这个是什么,为什么也没有函数体???
AwesomeEvent &operator=(const AwesomeEvent &);///<---好像是重载"="但为什么没有函数体
};