我阅读了很多关于这个主题的帖子,但我无法完全理解所有内容。好的,很明显
self.text = @"MyText" will call the accessory method setText (autogenerated)
_text = @"MyText" will still assign the value but will not call the setText
这很清楚。
但这在我们不使用 ARC 时很有用,因为 setText 会负责内存管理。但是当我们使用 ARC 时会发生什么?有时,如果我使用 _text 一切正常,有时如果我不使用“self.text”,我的应用程序将无法工作。
那么真正的区别是什么?必须有比内存管理更多的东西。
假设我有这个
@interface MyClass:NSObject {
NSMutableString *text;
}
@property (nonatomic ) NSMutableString *text;
在这种情况下,这不是同一个电话吗
self.text = @"ok"
或者
text = @"ok" ?
有什么不同?