MRC ARC下属性setter方法的实现

MRC条件下

- (void)setDog:(Dog *)dog  

{  

    if (_dog != dog) {  

        [_dog release];  

       _dog = nil;  

        _dog = [dog retain];  

   }  

}  

- (void)setName:(NSString *)newName

{

  if(_name != newName) {

    [_name release];

    _name = nil;

    _name = [newName copy];

     }

}

ARC条件下

- (void)setDog:(Dog *)newDog

{

  if(_dog != newDog) {  

    _dog = newDog;

  }

}

- (void)setName:(NSString *)name  

{  

  if(_name != name) {  

        _name = nil;  

        _name = [name copy];  

    }  

}  

 

原文地址:https://www.cnblogs.com/littlepony/p/6429220.html