即如果我这样做,会导致对象立即释放,而不必由池释放吗?
[[NSArray arrayWithCapacity:100] release];
在文档中找不到关于此的明确解释。
最佳答案
当对象通常被自动释放时,它可能会崩溃。 autorelease
意思是“延迟发布”,所以会发布:就在后面。由于该对象稍后将不存在,因为您手动释放它,您可能会由于运行时向您现在释放的对象发送 -release
消息而崩溃。
编辑:请注意,如果您-retain
自动释放的对象,您必须-release
它们:您正在取得所有权。
关于objective-c - 我可以提前释放自动释放对象吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2769726/