【发布时间】:2011-01-26 15:47:37
【问题描述】:
我想知道我是否需要释放一个复制的 NSObject?例如,我只创建一个字典并将其复制到一个数组中:
代码:
for (int num = 0; num < [object count]; num++) {
[dictionary setObject:[object objectAtIndex:num] forKey:@"x"];
[array addObject:[dictionary copy]];
}
我必须释放字典吗?如果有,什么时候?
谢谢
【问题讨论】:
-
根据经验,在 Cocoa 中你必须释放你拥有的任何东西。如果您使用 new、copy、alloc 或 retain 向它发送消息,您就拥有了它。如果您没有调用这些方法之一,则您不拥有它,也不应该释放它。
标签: iphone objective-c cocoa memory-management copy