黑马程序员技术交流社区

标题: autorelease和release的区别是什么? [打印本页]

作者: HunterTim    时间: 2015-7-14 08:36
标题: autorelease和release的区别是什么?
求大神指点
作者: strongfish    时间: 2015-7-14 20:27
release的语法:
Person *p = [[Person alloc] init];
[p retain];
[p release];
[p release];
说明:谁alloc谁release,谁retain谁release
-------------------------------------------
autorelease的语法:
@autoreleasepool
{
    Person *p = [[[Person alloc] init] autorelease];
}

说明:autorelease会将对象放到一个自动释放池中,当自动释放池被销毁时,会对池子里面的所有对象做一次release操作,并返回对象本身。调用完autorelease方法后,对象的计数器不变。

我也是初学者,希望对你有帮助。






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2