cocos2d-x中的NODE_FUNC和CREATE_FUNC宏作用

原创 2013年12月04日 14:31:56

NODE_FUNC (   __TYPE__ )

CREATE_FUNC (   __TYPE__ )


我们经常在头文件中用到上面两个宏。一个重写node()方法,另一个重写create()方法.


NODE_FUNC (   __TYPE__ )代码如下:

CC_DEPRECATED_ATTRIBUTEstatic__TYPE__* node() \

{ \

__TYPE__ *pRet = new __TYPE__(); \

if (pRet && pRet->init()) \

{ \

pRet->autorelease(); \

return pRet; \

} \

else \

{ \

delete pRet; \

pRet = NULL; \

return NULL; \

} \

}


CREATE_FUNC (   __TYPE__ )代码如下:

static__TYPE__* create() \

{ \

__TYPE__ *pRet = new __TYPE__(); \

if (pRet && pRet->init()) \

{ \

pRet->autorelease(); \

return pRet; \

} \

else \

{ \

delete pRet; \

pRet = NULL; \

return NULL; \

} \

}


从代码可以看出重写的作用:

实现二阶段构造:

即先调用构造函数(CCLayer类node方法中调用构造函数),再调用init方法进行初始化(子类中先调用父类的init方法)。

设置其自动释放内存,方便内存管理,不需要手动去释放

cocos2d-x系列笔记技巧篇(2)---关于CREATE_FUNC宏的用法

阅读cocos2d-x demo的代码,我们会看到有些头文件中使用CREATE_FUNC这个宏,那么它是做什么的呢?在cocos2d-x 又是起什么作用呢?下面我们就一起来看看CREATE_FUNC宏...
  • jinciyulang
  • jinciyulang
  • 2013年03月03日 22:25
  • 7152

cocos2d-x游戏开发中CREATE_FUNC和NODE_FUNC概述

此博客基于Cocos2d-2.1rc0-x-2.1.3  API NODE_FUNC(__TYPE__)这个宏在引擎内部被定义。重写node(); CREATE_FUNC(__TYPE__...
  • u010710758
  • u010710758
  • 2013年06月06日 18:21
  • 1017

cocos2d-x 中CREATE_FUNC 宏

cocos2d-2.1rc0-x-2.1.3版本中,CREATE_FUNC宏,内容如下: #define CREATE_FUNC(__TYPE__) \ static __TYPE__* cre...
  • yuprxk
  • yuprxk
  • 2013年10月10日 16:04
  • 970

cocos2d-x之CREATE_FUNC宏

阅读cocos2d-x demo的代码,我们会看到有些头文件中使用CREATE_FUNC这个宏,那么它是做什么的呢?在cocos2d-x 又是起什么作用呢?下面我们就一起来看看CREATE_FUNC宏...
  • fengqiaojiangshui
  • fengqiaojiangshui
  • 2015年03月05日 19:52
  • 276

Cocos2d-x游戏开发之三 NODE_FUNC和CREATE_FUNC说明

本站文章转载务必在明显处注明:原文链接: http://blog.csdn.net/cjsen/article/details/9028907 简言 此博客基于Cocos2d-2.1rc0-x-2...
  • CJsen
  • CJsen
  • 2013年06月05日 11:13
  • 1444

cocos2d-x中的NODE_FUNC和CREATE_FUNC两个宏方法的作用

在Cocos2d-x头文件xxxxx.h中经常看到NODE_FUNC (   __TYPE__ )和CREATE_FUNC (   __TYPE__ )这两个宏。一个重写node()方法,另一个重写c...
  • u014696234
  • u014696234
  • 2015年08月13日 18:11
  • 282

C++ CREATE FUNC的函数

函数实现create, /** * define a create function for a specific type, such as CCLayer * @__TYPE__ cla...
  • u013052732
  • u013052732
  • 2014年02月13日 16:22
  • 747

宏 CREATE_FUNC

宏的单行定义 #define maxi(a,b) (a>;b?a:b) 宏的多行定义 宏可以替代多行的代码  关键是要在每一个换行的时候加上一个 "\ " 宏定义写出swap(x,y)交换...
  • sssssNian
  • sssssNian
  • 2013年10月31日 14:54
  • 473

cocos2d-x CREATE_FUNC

阅读cocos2d-x demo的代码,我们会看到有些头文件中使用CREATE_FUNC这个宏,那么它是做什么的呢?在cocos2d-x 又是起什么作用呢?下面我们就一起来看看CREATE_FUNC宏...
  • wangqing008
  • wangqing008
  • 2015年03月04日 21:08
  • 479

cocos2dx 关于CREATE_FUNC 宏

/**   * define a create function for a specific type, such as CCLayer   * @__TYPE__ class type to ...
  • qq_25385775
  • qq_25385775
  • 2016年09月27日 20:53
  • 87
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:cocos2d-x中的NODE_FUNC和CREATE_FUNC宏作用
举报原因:
原因补充:

(最多只允许输入30个字)