我有一个按以下方式创建和初始化的字典
NSDictionary *dict = [[NSMutableDictionary alloc] initWithCapacity:N];
for (int index = 0; index < N; index++) {
MyObject *obj = [[MyObject alloc] init];
...
[dict setObject:obj forKey:index];
}
问题是1. MyObject实例应该自动释放吗?2. 一旦我需要释放NSDictionary实例,我是否也应该释放所有MyObject实例(如果它们不是以自动释放方式创建的)
您可以在调用setObject之后显式释放MyObject实例,因为它们将在此时保留。您可以自动释放MyObject实例,但显式释放将更有效。释放NSDictionary实例将释放MyObject实例