initWith ...方法的接收者是否拥有所有权 - 内存管理

时间:2012-10-02 16:05:04

标签: objective-c memory-management

toNewbie问:有人可以帮助我理解initWith ....方法的接收者是否取得了返回对象的所有权并且应该管理它。 例如:

NSString *msg; //could be used to hold some data, then
[msg initWithFormat: @"some text"]; //do I need to do a retain or is the method returning an auto-released string object

只是试图让我的头脑包围不明确使用alloc的方法

1 个答案:

答案 0 :(得分:1)

名称中包含init的方法通常与alloc一起调用,如:

MyObject *obj = [[MyObject alloc] init];

alloc会返回一个+1保留计数的对象,因此您不需要保留它。