我在Xcode中将以下行作为泄漏:
someSprite = [[CCSprite alloc] initWithFile:(NSString*)obj];
我知道我在那里分配它,但我认为Cocos2D处理了所有的内存管理。无论如何我应该如何妥善处理那条线以便没有泄漏?
我应该简单地使用自动释放还是更多呢?
谢谢!
答案 0 :(得分:2)
Cocos2D不会为您处理内存。但是,我认为您可以使用自动引用计数(ARC)来摆脱必须自己处理内存。然后,您使用Cocos2d作为静态库,因为cocos2d不支持ARC。
如果您想在没有ARC的情况下解决问题,只需插入自动释放。如果它是一个实例变量,请在dealloc方法中释放它。
答案 1 :(得分:1)
通常,更优选使用返回自动释放对象的静态构造函数。对于你的情况,它将是
[CCSprite spriteWithFile:(NSString*)obj];
将其添加到任何父级
时,它将被保留