假设我有这样一个函数:
- (NSSet *) someFunction {
//code...
return [[[NSSet alloc] initWithObjets:obj1, obj2, nil] autorelease];
}
当我调用这个函数时,我需要保留/释放返回值吗?我认为需要。然而,如果我不使用autorelease,那么someFunction现在会变成这样:
- (NSSet *) someFunction {
//code...
return [[NSSet alloc] initWithObjets:obj1, obj2, nil];
}
在这种情况下,我假设我需要释放但不保留返回值。我的问题是,对于这些情况,建议/最佳实践是什么?是否推荐使用某个版本的someFunction?谢谢。