声明属性并使用self分配值

时间:2010-06-16 22:05:08

标签: objective-c

我理解声明的属性是如何工作的 - 我只需要澄清Objective C何时使用访问器方法与何时不使用。

假设我有一个使用retain声明的属性:

@property(非原子,保留)NSDate * date;

......以后...... @synthesize日期

如果我说: date = x

这是调用访问器方法吗?或者只是设置变量?

self.date = x

这似乎称为访问器方法(我想但我不确定,因为看起来保留计数正在增加)。

任何人都可以澄清这个问题吗?我很好奇,因为我有一些变量似乎在我需要之前变得无效(我必须专门调用retain),我怀疑这就是原因。

1 个答案:

答案 0 :(得分:0)

date = x;正在直接设置实例变量并绕过访问器方法。

self.date = x;[self setDate:x];相同,并且正在使用访问器方法。