zoukankan      html  css  js  c++  java
  • cocos2D单例

        单例(singleton) 是一个很易于理解的概念。在 Cocos2d-x 引擎中,我们能看到大量单例的身影,
    它们大部分出现在一些系统资源管理类中。单例模式保证了全局有且只有一个实例对象,保证自动地初始化该对象,使得
    程序在任何时候任何地方都可以访问、获取该对象。
    例如,Cocos2d-x 的游戏流程控制器 CCDirector 是一个独一无二的控制器,用于切换游戏场景。换句话说,不可能同时存
    在两个 CCDirector 实例。
    在这种情况下, Cocos2d-x 采用了单例的技巧。用户可以通过类提供的静态方法获取独一无二的实例,而不需要自己来创建。
    观察 CCDirector 的代码:

    static CCDisplayLinkDirector s_SharedDirector;  
      CCDirector* CCDirector::sharedDirector(void)  
      {  
          static bool s_bFirstUseDirector = true;  
          if (s_bFirstUseDirector)  
          {  
              s_bFirstUseDirector = false;  
              s_SharedDirector.init();  
          }  
          return &s_SharedDirector;  
      } 
      可以发现,CCDirector 维护了一个静态的 CCDirector 实例,在第一次使用前初始化。为了访问 CCDirector 控制器,我们
    可以使用如下代码:
      CCDirector::sharedDirector()->replaceScene(newScene);

  • 相关阅读:
    处理集合_创建Set
    处理集合_通过对象模拟Set
    处理集合_key相等
    处理集合_创建第1个map
    idea实用快捷键
    Typroa 常用快捷键
    关于IDEA无法加载main方法的bug
    TCP通信的实现代码
    用GUI实现java版贪吃蛇小游戏
    UDP实现在线聊天功能
  • 原文地址:https://www.cnblogs.com/Star9527/p/3404144.html
Copyright © 2011-2022 走看看