编译器自动插入retain、release、autorelease操作

插入的时候直接调的C语言的方法,而不是发消息

会对插入的retain、release操作做优化,去除不必要的retain、release

 

另外,当一个类有强引用的实例变量时,ARC会自动生成cxx_destruct方法,在这个方法中给每个强引用的实例变量的引用计数减一。

 

ARC不能管理非OC对象(即不继承自NSObject或者NSProxy的对象),因为非OC对象不会实现NSObject协议,也就是没有retain、release、autorelease、retainCount等一 系列方法,所以不能被ARC管理。

posted on 2020-03-25 10:43  ximenchuixie  阅读(466)  评论(0编辑  收藏  举报