ARC相当于自动释放?

时间:2011-11-28 06:04:43

标签: objective-c clang automatic-ref-counting autorelease

如果我有这段代码,

+ (MyCustomClass*) myCustomClass
{
    return [[[MyCustomClass alloc] init] autorelease];
}

此代码保证返回的对象是自动释放的。 ARC中与此相当的是什么?

2 个答案:

答案 0 :(得分:20)

ARC中没有相应的内容,因为您不需要自己动手。 它将在幕后发生,你不能自己做。

您只需使用 -

+ (MyCustomClass*) myCustomClass
{
    return [[MyCustomClass alloc] init];
}

我建议你在2011 WWDC上观看ARC的介绍,因为它非常简单。

看这里: https://developer.apple.com/videos/wwdc/2011/

正如电影中的人所说 -

  

你不必再考虑它了(差不多)

答案 1 :(得分:7)

使用ARC进行编译时,只需将其写为:

+ (MyCustomClass *)myCustomClass
{
    return [[MyCustomClass alloc] init];
}

并且编译器/运行时将为您处理其余部分。