iOS面试题:ARC的底层原理,怎么实现自动释放的,和MRC的区别是什么?

  • ARC管理原则:只要一个对象没有被强指针修饰就会被销毁,默认局部变量对象都是强指针,存放到堆里面,只是局部变量的强指针会在代码块结束后释放,对应所指向的内存空间也会被销毁。

  • MRC没有strong,weak,局部变量对象就是相当于基本数据类型。MRC给成员属性赋值,一定要使用set方法,不能直接访问下划线成员属性赋值,因为使用下划线是直接赋值(如_name = name),而set方法会多做影响引用计数方面的事情,比如retain。


更多:iOS面试题合集

你可能感兴趣的:(iOS面试题:ARC的底层原理,怎么实现自动释放的,和MRC的区别是什么?)