随着所有这些新的 ARC 内容(不属于 NDA...)的出现,处理属性的默认设置似乎是在实现文件中显式设置没有和 ivar 的属性,直到您将它与类似的东西合成:
@synthesize var = _var;
设置变量的最佳做法是什么?我知道 var
和 self.var
之间的区别在于 self.var
使用点表示法并使用 var 的 setter 方法。
_var
是否等同于在过去的好日子里在头文件中设置它?用下划线作为前缀的做法从何而来?
最佳答案
_var
只是实例变量的不同名称(大概是为了避免在您打算使用访问器时不小心直接访问它)。除了作为有效的 ivar 名称之外,它在语言中没有任何特殊含义。
关于iphone - _var 和 self.var 的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6377365/