【发布时间】:2016-06-29 10:35:15
【问题描述】:
据我所知,您应该始终使用访问器来访问或修改属性,但以下两种情况除外:
- 初始化
- dealloc
不要在初始化方法和 dealloc 中使用访问器方法 唯一的 不应该使用访问器方法来设置实例变量的地方 在初始化方法和dealloc中。初始化计数器对象 使用表示零的数字对象,您可以实现一个 init。
此异常是因为在视图未完全初始化时调用访问器可能会在覆盖 setter/getter 时引发问题 (https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmPractical.html)
因此,根据这一点,在viewDidLoad 上使用访问器应该非常好,甚至被推荐,但是在互联网上的大多数可用代码中,开发人员在viewDidLoad 上使用_ivars,我想知道为什么。在viewDidLoad 中使用属性_ivars 而不是访问器是否有理由?
【问题讨论】:
标签: ios objective-c properties accessor viewdidload