可能重复:
memory management objective c - returning objects from methods
我对保留物体感到困惑。如果我有一个函数将返回这样的对象:
- (object) functionA {
NSObject* o = [[object alloc] init];
return o;
}
返回的对象的保留计数为1 ....但这是最好的做法,或者我首先放置自动释放并让调用者保留对象。
答案 0 :(得分:3)
在这种情况下,您将返回一个自动释放的对象。 NARC规则规定,任何不包含“new”,“alloc”,“retain”或“copy”字样的方法都应返回非拥有引用。方法functionA
在其名称中不包含任何单词。