cocos2d 关于retain、release以及autorelease

前端之家收集整理的这篇文章主要介绍了cocos2d 关于retain、release以及autorelease前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

cocos2d中的内存管理采用引用计数的机制,当创建的节点使用retain则引用计数+1,使用release则引用计数-1,当节点的引用计数为0时,节点被自动释放,这个作用机制的前提是该节点对象调用了autorelease函数。 目前的cocos2d大部分类都有create函数,而create函数里面已经包含了对节点使用autorelease的部分。而像addChild的函数内部是包含调用retain的,因此不会出现出了其指针作用于就会出现指针变“野”的情况,也不需要开发者自己再对节点对象调用一次retain。 因此,记住必须要对象调用了autorelease函数之后,retain与release函数才会生效,所以建议用create函数创建对象。

猜你在找的Cocos2d-x相关文章