ARC
1、概念
循环引用计数,是一个编译器特性与Java的垃圾回收机制属于运行时特性。即当编译器编译代码的时候会自定检测是否生成释放内存的代码。
2、ARC判断准则
只要没有强指针指向对象,就会释放对象。
3、指针分类
1>强指针:默认情况下,所有的指针都是强指针。
2>弱指针:__weak
4、ARC当中的@property
1>strong
用strong替换retain
@property (nonatomic, strong)Cat *c;
2>weak
weak用于对象
5、Xcode的ARC转换功能
1>将老的项目转成ARC
2>ARC和非ARC混合使用
①点击Xcode->点击Build Phases
②选择一个.m文件,并双击。
③在呼出的compiler flages当中输入-fno-objc-arc/-f-objc-arc
3>ARC和非ARC
6、小零碎
1>__weak Person *p = [[Person alloc] init];错误的写法,因为直接定义的弱指针指向对象,没有强指针就会在定以后直接释放。 |
|