大佬教程收集整理的这篇文章主要介绍了模拟cocos2d-x 代理模式,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
根据cocos2d-x的代理模式,仿写一遍。
class CCApplicationProtocol { public: virtual bool applicationDidFinishLaunching() = 0; }; class CCApplication :public CCApplicationProtocol { public: static CCApplication* instance ; CCApplication() { //这里的this是CCApplication子类里面的对象 instance = this; } ~CCApplication() { } void run() { applicationDidFinishLaunching(); } static CCApplication* geTinstance() { return instance; } }; CCApplication* CCApplication::instance = NULL; /** * @brief The Android class * android 平台实现 */ class Android:private CCApplication { public: bool applicationDidFinishLaunching() { cout<<"this is android"<<endl; return true; } }; /** * @brief The Linux class * Linux 平台的实现 */ class Linux:private CCApplication { public: bool applicationDidFinishLaunching() { cout<<"this is Linux"<<endl; return true; } }; /** * @brief The Ios class * IOS 平台的实现 */ class Ios:private CCApplication { public: bool applicationDidFinishLaunching() { cout<<"this is IOS"<<endl; return true; } }; /** * @brief The Ios class * win32 平台的实现 */ class Windows:private CCApplication { public: bool applicationDidFinishLaunching() { cout<<"this is windows"<<endl; return true; } };
Android平台实现的调用
Linux平台实现的调用(后面创建的对象会覆盖前面创建的对象)。
IOS平台
win32平台
以上是大佬教程为你收集整理的模拟cocos2d-x 代理模式全部内容,希望文章能够帮你解决模拟cocos2d-x 代理模式所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。