如何判断当前文件是ARC还是MRC?
- 1、dealloc方法中能否调用super,只要MRC才能调用super;
- 2、能否使用retain、release,如果可以就是MRC;
ARC管理原则:只要一个对象没有被强指针修饰就会被销毁,默认局部变量对象都是强指针,存放在堆里面。
MRC了解开发常识:
- 1、MRC没有strong、weak,局部变量对象就是相当于基本数据类型;
- 2、MRC给成员属性赋值一定要用set方法,不能直接访问下划线成员属性赋值。
总结
只要block不引用外部局部变量,block放在全局区。
MRC 管理block
- 只要block引用外部局部变量,block放在栈里面,block只能使用copy不能使用retain,用retain,block还是在栈里面。
ARC 管理block
- 只要block引用外部局部变量,block就放在堆里面,block使用copy,尽量不要使用strong。