我有一些奇怪的场景,我有对象传递给其他对象,它的“this”指针如下:
void GameLayer::startGame()
{
m_pGameController = new GameController(this);
}
在 GameController 构造函数中,我使用 GameLayer 设置 memeber
GameController::GameController(GameLayer* gamelayer)
{
m_gamelayer = gamelayer;
}
在 GameController 我有使用回调函数的函数,如下所示:
GameController::methodA()
{
CurrentGem->runAction(GameController::mycallbackMethod);
}
在回调函数中,我使用“this”访问 GameController 函数和成员,例如:
GameController::mycallbackMethod()
{
int test = this->age();
std::string name = this->name();
}
但问题是当我尝试访问 m_pGameController 时,它给了我一个异常,说它的 NULL 指针
GameController::mycallbackMethod()
{
this->m_gamelayer->someGamelayerMethod();
}
错误是:
Access violation reading location 0xFFFFFFFF.
我究竟做错了什么 ?