arrayWithCapacity是NSArray.h中定义的方法,在NSArray.m中实现
当我查看GNUStep提供的代码时,我可以得到arrayWithCapacity是一个调用initWithCapacity的常规方法:
+ (id) arrayWithCapacity: (NSUInteger)numItems { return AUTORELEASE([[self allocWithZone: NSDefaultMallocZone()] initWithCapacity: numItems]); }
initWithCapacity是一个只进行自我初始化的简单方法.
- (id) initWithCapacity: (NSUInteger)numItems { self = [self init]; return self; }
没有关于内存分配和执行的项目数量.
使用arrayWithCapacity方法有什么好处?简单地使用[[NSArray alloc] init]会更好吗?