A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 氯化钾 中级黑马   /  2014-4-12 12:10  /  982 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

使用arc的时候。。什么时候该用强引用,什么时候用弱引用呢??  比如定义属性的时候

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

2 个回复

倒序浏览
在循环引用的情况下:就是说:A引用B,B也引用A。一端用strong,另一端用weak
  1. #import <Foundation/Foundation.h>
  2. @class Person;
  3. @interface Car : NSObject
  4. //weak代表成员变量_persson是弱指针类型的变量,用来解决ARC下的循环引用。
  5. @property (nonatomic,weak)Person *person;
  6. /*
  7. 这里Car和Person这两个类同时引用对方,这样就容易引发对象不能被释放的内存问题
  8. 在Person类一端用strong(@property (nonatomic,strong)Car *car;);
  9. 另一端用weak(@property (nonatomic,weak)Person *person;),
  10. 这样就可以解决ARC下的循环引用引发的对象不能释放的内存问题了。
  11. */
  12. @end
复制代码

评分

参与人数 1技术分 +1 收起 理由
jing迪 + 1

查看全部评分

回复 使用道具 举报
悟中生有 发表于 2014-4-12 12:21
在循环引用的情况下:就是说:A引用B,B也引用A。一端用strong,另一端用weak
...

好的 谢谢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马