cocos2d中CREATE_FUNC

来源:互联网 发布:淘宝买台式电脑靠谱吗 编辑:程序博客网 时间:2024/05/18 02:16
先看下CREATE_FUNC的代码:
  1. /** 
  2.  * define a create function for a specific type, such as CCLayer 
  3.  * @__TYPE__ class type to add create(), such as CCLayer 
  4.  */  
  5. #define CREATE_FUNC(__TYPE__) \  
  6. static __TYPE__* create() \  
  7. { \  
  8.     __TYPE__ *pRet = new __TYPE__(); \  
  9.     if (pRet && pRet->init()) \  
  10.     { \  
  11.         pRet->autorelease(); \  
  12.         return pRet; \  
  13.     } \  
  14.     else \  
  15.     { \  
  16.         delete pRet; \  
  17.         pRet = NULL; \  
  18.         return NULL; \  
  19.     } \  
  20. }  
相当于重写create函数,让create函数返回子类对象。 它执行了类的构造函数,执行了init()初始化函数,最后又设置创建出的对象为自动释放内存.这样其他人在使用这个类的时候,只要是用create()函数创建出来的对象就不用费心去管理释放内存了。
0 0
原创粉丝点击