2
在Swift程序中是否需要使用autoreleasepool?
在WWDC14演示文稿的第17页上,它说 使用Objective-C?仍然必须管理自动释放池 autoreleasepool {/ *代码* /} 那是什么意思?这是否意味着如果我的代码库中没有任何Objective-C文件,那autoreleasepool {}是不必要的吗? 在回答一个相关问题时,有一个示例在其中autoreleasepool有用: - (void)useALoadOfNumbers { for (int j = 0; j < 10000; ++j) { @autoreleasepool { for (int i = 0; i < 10000; ++i) { NSNumber *number = [NSNumber numberWithInt:(i+j)]; NSLog(@"number = %p", number); } } } } 如果上面的代码通过autoreleasepool拖放转换为Swift ,Swift是否足够聪明,知道number应该在第一个变量之后释放变量}(就像其他语言一样)?