MRC的下setter访问器的两种形式

Posted 010_purple

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MRC的下setter访问器的两种形式相关的知识,希望对你有一定的参考价值。

// Person复合了Phone和Room

 

// 第一种

- (void)setPhone:(Phone *)phone

{

    if (phone != _phone)

    {

        [_phone release];

        _phone = [phone retain];

    }

}

 

// 第二种

- (void)setRoom:(Room *)room

{

    [room retain];

    [_room release];

    _room = room;

}

 

- (void)dealloc

{

    NSLog(@"%s", __func__);

    

 

    self.phone = nil; // 赋值为nil会调用setter完成下面的两步操作

    

    // 等效的

    [_room release];

    _room = nil;

    

    

    [super dealloc];

}

以上是关于MRC的下setter访问器的两种形式的主要内容,如果未能解决你的问题,请参考以下文章

OC学习-8存取器方法?getter和setter?事实上就是赋值和返回值的两种函数

xamarin 表单 - 与选择器的两种方式绑定 - 为啥我不能从后面的代码更新选择器?

spring的两种属性注入方式setter注入和构造器注入或者自动注入

Python 3:检查迭代器的下一个值而不进行迭代

LVS调度器的两种方法

迭代器与生成器