使用弧保释对象的init?

时间:2012-02-27 18:06:04

标签: objective-c automatic-ref-counting

如何避免使用ARC创建对象?

我正在寻找与此相当的ARC(来自内存):

- (id)init
{
     if (( self = [super init] )) {
         if (!condition) {
             [self release];
             self = nil;
             return self;
         }
     }
     return self;
 }

1 个答案:

答案 0 :(得分:26)

只是摆脱对release的号召,你会没事的。既然你没有自己,就不会再引用旧的自我,所以它将被解除分配。

- (id)init;
{
     if ((self = [super init])) {
         if (!condition) {
             return nil;
         }
     }
     return self;
 }