autorelease理解

2015-10-13  本文已影响76人  soundtravel

总是搞不清autorelease为什么要有的问题。现在梳理一下

为什么要有autorelease??

可以这样理解,对于一个方法return [[NSObject alloc] init];这个新建的NSObject对象谁来释放??

根据“谁申请,谁释放”的原则,调用者也不能释放,因为不是申请者;方法内部不可能有释放,否则就返回了空对象。

所以就用了autorelease延迟了该对象的释放,将其加入到autoreleasePool中

http://blog.csdn.net/yuanya/article/details/8870852 这篇文章写得挺好。

上一篇下一篇

猜你喜欢

热点阅读