和以前一样,我们通常会做这样的 for 循环:
for (int i = 0 ; i < 5; i ++) {
NSNumber * number = [[NSNumber alloc] initWithInt:i];
[muArray addObject:number];
[number release];
}
但是在 ARC 下,没有release
. 我可以在没有@autorelease
块的情况下管理内存,像这样(直接删除释放语句):
for (int i = 0 ; i < 5; i ++) {
NSNumber * number = [[NSNumber alloc] initWithInt:i];
[muArray addObject:number];
}
同样,有@autoreleasepool
必要这样吗?
for (int i = 0 ; i < 5; i ++) {
@autoreleasepool{
NSNumber * number = [NSNumber numberWithInt:i];
[muArray addObject:number];
}
}