编译器自动插入retain、release、autorelease操作
插入的时候直接调的C语言的方法,而不是发消息
会对插入的retain、release操作做优化,去除不必要的retain、release
另外,当一个类有强引用的实例变量时,ARC会自动生成cxx_destruct方法,在这个方法中给每个强引用的实例变量的引用计数减一。
ARC不能管理非OC对象(即不继承自NSObject或者NSProxy的对象),因为非OC对象不会实现NSObject协议,也就是没有retain、release、autorelease、retainCount等一 系列方法,所以不能被ARC管理。