天天看点

objective-c中@autoreleasepool的用法

objc中关于自动释放池,有两种语法,一种old-fashioned是:

那么新的语法是:

可以明显看出,后者比前者语法要简单,那么新式和旧式的语法有神马区别呢?

apple dev里有清楚的说明:

nsautoreleasepool class用来支持cocoa的引用计数内存管理系统。如果你使用arc,你不能直接使用autoreleasepool,作为替代,你可以使用@autoreleasepool块的语法:

但随后文档也说了:@autoreleasepool块的语法更有效率,所以你也可以在不使用arc的情况下使用该语法。