如何获得AppDelegate的唯一实例!?

{:soso_e154:}弱弱的问一句,如何获得AppDelegate的唯一实例!?就像cocos2d中的sharedAppDelegate一样!?

— Begin quote from ____

luyungeng 发表于 2012-9-28 10:37 url

static_cast应该可以吧,因为其实CCApplication只会有一个实例,而且类型一定是你自己定义的这个appDeleg …

— End quote

恩,我发现了在xcode上用dynamic_cast会返回一个NULL,据说在vc上可以,可能时因为编译器有点差别。还是改用static_cast了

— Begin quote from ____

luyungeng 发表于 2012-9-27 16:56 url

/**
@brief Get current applicaiton instance.
@return Current application instance poi …

— End quote

这是获得CCApplication &delegate = CCApplication::sharedApplication();
有没有理法获得指向appdelegate的指针呢

— Begin quote from ____

luyungeng 发表于 2012-9-27 20:09 url

CCApplication::CCApplication()
: m_hInstance(NULL)
, m_hAccelTable(NULL)

— End quote

噢,,,非常感谢,,竟然忘了类型转换

:funk:自己顶,,不可能没人知道啊

— Begin quote from ____

jlstmac 发表于 2012-9-27 21:59 url

噢,,,非常感谢,,竟然忘了类型转换

— End quote

今天在程序例试了一下,用static_cast<>是不能完成转换的,因为static_cast在进行下行转换时不具备类型检查功能,应该用dynamic_cast<>。完整写法如下,希望对别人有帮助。
AppDelegate delegate = dynamic_cast<AppDelegate>(&CCApplication::sharedApplication());