【发布时间】:2011-05-02 09:48:44
【问题描述】:
如果我在函数内部创建一个对象并返回它,我应该何时/何处释放该对象?这是我创建对象的示例。
- (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?如果没有内存泄漏,这段代码会是什么样子?
【问题讨论】:
标签: objective-c ios memory-management