您的位置:首页 > 移动开发 > Cocos引擎

Cocos2d-x 中与内存管理有关的宏

2015-08-16 14:53 309 查看
引用计数很巧妙也很方便,但大部分处理过程涉及指针,难免比较烦琐,也容易出错。针对这个问题,Cocos2d-x 为我们准备了一系列辅助宏来简化代码,这些宏都包含在头文件”CCPlatform  Macro.h”里。下面列出了与内存管理相关的宏。

1.  CC_SAFE_DELETE(p)

使用 delete 操作符删除一个 C++对象 p, 如果 p 为 NULL,则不进行操作。

2. CC_SAFE_DELETE_ARRAY(p)

使用 delete[]操作符删除一个 C++数组 p,如果 p 为 NULL,则不进行操作。

3. CC_SAFE_FREE(p)

使用 free()函数删除 p,如果 p 为 NULL,则不进行操作。

4. CC_SAFE_RELEASE(p)

使用 release()方法释放 Cocos2d-x 对象 p的一次引用,如果 p 为 NULL,则不进行操作。

5. CC_SAFE_RELEASE_NULL(p)

使用 release()方法释放 Cocos2d-x 对象 p 的一次引用,再把 p 赋值为 NULL。

如果 p 已经为 NULL,则不进行操作。

6. CC_SAFE_RETAIN(p)

使用 reatin()方法增加 Cocos2d-x 对象 p 的一次引用。如果 p 为 NULL,则不进行操作。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息