关于cocos2d-x内从管理引用计数机制的小技巧

来源:互联网 发布:Linux更新软件 编辑:程序博客网 时间:2024/04/29 04:17
#define CC_SAFE_DELETE(p)           do { delete (p); (p) = nullptr; } while(0)
#define CC_SAFE_DELETE_ARRAY(p)     do { if(p) { delete[] (p); (p) = nullptr; } } while(0)
#define CC_SAFE_FREE(p)             do { if(p) { free(p); (p) = nullptr; } } while(0)
#define CC_SAFE_RELEASE(p)          do { if(p) { (p)->release(); } } while(0)
#define CC_SAFE_RELEASE_NULL(p)     do { if(p) { (p)->release(); (p) = nullptr; } } while(0)
#define CC_SAFE_RETAIN(p)           do { if(p) { (p)->retain(); } } while(0)

#define CC_BREAK_IF(cond)           if(cond) break

可以发现这些宏定义非常好用,而且使用这些宏第一可以避免自己写的应用计数造成内存泄露


0 0
原创粉丝点击