我觉得autorelease针对的是新建的对象, 如果新建对象时使用了alloc/new/copy, 就需要release或者autorelease一次.
重写dealloc方法针对的是一个对象所拥有的对象类型的属性, 如果在set方法中对它的对象属性retain了一次, 就需要在dealloc方法里对这个属性release一次.
所以说, autorelease对应的是alloc, 对对象本身做释放; dealloc里的release对应的是set方法里的retain, 对对象的属性做释放.
应该是只有在使用ARC的时候, 才不需要管dealloc方法.
{:3_57:} |