我在一个类的成员函数中将这个类的另一个函数的指针作为参数传递给另外一个类的成员函数
在用函数指针调用的时候发现指针有问题
不知道什么原因 求解
调用的地方 :
pClassFun pCallFun = &Gameplus::NBomb::CreateFlower;
m_pMovieMaker->RegistMovie(pCallFun);
其中 :
#define CALLBACKPROXY Gameplus::NBomb
typedef void (CALLBACKPROXY::*pClassFun)();
运行到这里的 pCallFun值为0x00411a3c
而且测试 (this->*pCallFun )(); 正常调用
在RegistMovie的代码如下:
int CHrMovieMaker::RegistMovie(pClassFun pFun )
{
(m_pCallbackProxy->*pFun)();
}
这时候的pFun 值为0x00411a3c 但是运行到调用的时候报错