我注意到在 XCode 中使用 Sencha 测试来测试视图控制器的推荐方法是通过实例化它
@property (nonatomic, readwrite, weak) MyMainViewController* mainViewController;
为什么不只是
@property (nonatomic, strong) MyMainViewController* mainViewController;
?
我注意到在 XCode 中使用 Sencha 测试来测试视图控制器的推荐方法是通过实例化它
@property (nonatomic, readwrite, weak) MyMainViewController* mainViewController;
为什么不只是
@property (nonatomic, strong) MyMainViewController* mainViewController;
?
readwrite 不是绝对必要的,因为它是默认设置。至于强与弱,使用弱的主要原因是为了避免引用循环(即两个对象相互具有强引用,因此它们永远不会被释放)。
正如@borrrden 提到的,弱引用在尝试避免保留循环时很有用。
如果您正在研究弱引用,我强烈建议您阅读Mike Ash 的这篇文章。理解归零弱引用和非归零弱引用之间的区别很重要。