Я запускаю проект C ++ (использующий Cocos2d-x, но это не имеет большого значения), где мой AppDelegate создает объект IntroMenu.Я хочу определить AppDelegate как переменную экземпляра моего класса IntroMenu, но мне не удается это сделать ...
Вот как определяется мое IntroMenu:
IntroMenu.h
class IntroMenu : public cocos2d::CCLayerColor
{
public:
AppDelegate* _app;
//etc...
}
IntroMenu.m
CCScene* IntroMenu::scene()
{
CCScene *scene = CCScene::node();
IntroMenu *layer = IntroMenu::node();
scene->addChild(layer);
return scene;
}
Когда я создаю IntroMenu из моего AppDelegate, я поступаю следующим образом в AppDelegate:
introScene = IntroMenu::scene();
((IntroMenu*)introScene)->_app = this;
_app
является публичной переменной (типа AppDelegate) IntroMenu.
Проблема заключается в том, что _app
является нулевым указателем, когда я хочу использовать его позже в других методах AppDelegate.
Как правильно создать экземпляр IntroMenu и его переменную _app
?
Спасибо !!