繁体   English   中英

为什么我们在iOS中测试时指定“弱”?

[英]Why do we specify “weak” when testing in iOS?

我注意到,使用Sencha测试在XCode中测试视图控制器的推荐方法是通过实例化它

@property (nonatomic, readwrite, weak) MyMainViewController* mainViewController; 

为什么不呢

@property (nonatomic, strong) MyMainViewController* mainViewController;

readwrite并非严格必要,因为它是默认值。 至于强弱对弱,使用弱的主要原因是避免引用循环(即两个对象具有强引用,因此它们永远不会被释放)。

正如@borrrden所提到的,当尝试避免保留周期时,弱引用很有用。

如果您正在研究弱引用,我强烈建议您阅读Mike Ash的这篇文章 重要的是要理解归零弱引用和非归零弱引用之间的区别。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM