如果我在函数内创建一个对象并返回它,那么应该在什么时候/何处释放此对象?以下是一个创建对象的示例。
- (NSDictionary*) sampleFunction
{
NSMutableDictionary* state = [[NSMutableDictionary alloc] initWithCapacity:5];
[state setObject:[[NSNumber alloc] initWithInt:self.a] forKey:@"a"];
[state setObject:[[NSNumber alloc] initWithInt:self.b] forKey:@"b"];
[state setObject:[[NSNumber alloc] initWithInt:self.c] forKey:@"c"];
return state;
}
附加问题:为了避免内存泄漏,我还需要释放在这里分配的NSNumbers吗?如果没有内存泄漏,这段代码会是什么样子?