前言
ARC , Automatic Reference Counting,自动引用计数,即ARC。 顾名思义:系统自动帮我们去计算对象的引用计数器的值。 可以说,这门技术,是WWDC2011和iOS5引入的最大的变革和最激动人心的变化。。。 ARC是新的LLVM3.0编译器的一项特性,使用ARC,可以说一举解决了广大iOS开发者所憎恨的手动内存管理的麻烦。
一、怎么用ARC呢在程序中使用ARC非常简单,只需要像往常那样编写代码, 只不过永远不要写retain,release,autorelease这三个关键字就好,这就是ARC的最基本的原则。关于dealloc方法,只要不调用[super dealloc];这句话,就可以写。。 当ARC开启的时候,编译器会自动的在合适的地方插入retain,release,autorelease代码。 编译器自动为对象做引用计数,而作为开发者,完全不需要担心编译器会做错,除非开发者自己错用了ARC。 需要特别注意的是:ARC是编译器机制,在编译器编译代码的时候,会在适时的位置加入retain,release,autorelease代码。
二、ARC机制下,对象何时被释放 1.本质:ARC机制下,对象仍然有引用计数器,对象的引用计数器为0的时候,对象被释放。 2.表象:只要没有强指针指向这个对象,这个