同一cocos2dx的对象先retain再release的注意事项

同一cocos2dx的对象先retain再release的注意事项,第1张

概述    /** 以下为cocos2dx原码 先执行的是release,如果_data[index]与object是一个东西且ref等1     问题就来了,先删了_data[index],再retain崩溃*/     void replace(ssize_t index, T object)     {         CCASSERT(index >= 0 && index < size(),

/** 以下为cocos2dx原码 先执行的是release,如果_data[index]与object是一个东西且ref等1

问题就来了,先删了_data[index],再retain崩溃*/

voID replace(ssize_t index,T object)

{

CCASSERT(index >= 0 && index < size(),"InvalID index!");

CCASSERT(object != nullptr,"The object should not be nullptr");

_data[index]->release();

_data[index] = object;

object->retain();

}

应改为先retain再release

object->retain();

_data[index]->release();

_data[index] = object;

以上点,引用object基础编程

总结

以上是内存溢出为你收集整理的同一cocos2dx的对象先retain再release的注意事项全部内容,希望文章能够帮你解决同一cocos2dx的对象先retain再release的注意事项所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1061680.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-25
下一篇 2022-05-25

发表评论

登录后才能评论

评论列表(0条)