我怎么打算释放从类方法返回的数组? [英] How am I meant to release an array returned from a class method?
本文介绍了我怎么打算释放从类方法返回的数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一段代码,它调用返回 NSMutableArray
的方法:
I have a section of my code which calls a method returning an NSMutableArray
like so:
+(NSMutableArray *)method {
NSMutableArray *rgb = [[NSMutableArray alloc] initWithObjects:....., nil];
return rgb;
}
在 return
之后放置 [rgb release];
似乎不起作用。将它放在 return
之前会使我的应用程序崩溃。同时插入 autorelease
会使我的应用程序崩溃。建议?
It gives me a leak every time it's called. Putting [rgb release];
after return
doesn't appear to work. Putting it before return
makes my app crash. Also putting in an autorelease
makes my app crash. Suggestions?
推荐答案
+(NSMutableArray *)method {
NSMutableArray *rgb = [[NSMutableArray alloc] initWithObjects:....., nil];
return [rgb autorelease];
}
或者:
+(NSMutableArray *)method {
NSMutableArray *rgb = [NSMutableArray arrayWithObjects:....., nil];
return rgb;
}
如果这仍然崩溃,那么问题很可能在这个方法之外,不在内。
IF this still crashes, then the problem is most likely outside of that method, not within.
这篇关于我怎么打算释放从类方法返回的数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文