繁体   English   中英

Objective-C和退货时自动释放

[英]Objective-C and autorelease on return

是两种方法

- (id) myFirstMethod
{
  NSObject* anObject = [[NSObject alloc] init];
  [anObject autorelease];
  return anObject;
}

- (id) mySecondMethod
{
  NSObject* anObject = [[NSObject alloc] init];
  return [anObject autorelease];
}

相同?

是的,两种方法是相同的。 无论何时多行编写嵌套函数或相同代码,编译后都一样。

您可以在返回中做所有事情:

- (id) myThirdMethod {
    return [[[NSObject alloc]init]autorelease];
    }

是的,它们是相同的,但是它们所做的只是导致编译器错误。

不允许[anObject] 而且NSObject anObject也是无效的语法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM