当使用“initWithObjects”将对象添加到 NSArray 时,任何人都可以为我确认这些项目被保留。我很确定它们是,但是找不到有关 initWithObjects 的任何地方提到它?
// CREATE DRINKS
Coffee *drink1 = [[Coffee alloc] initWithName:@"Flat White"];
Coffee *drink2 = [[Coffee alloc] initWithName:@"Cappucino"];
Coffee *drink3 = [[Coffee alloc] initWithName:@"Latte"];
Coffee *drink4 = [[Coffee alloc] initWithName:@"Mocha"];
Coffee *drink5 = [[Coffee alloc] initWithName:@"Hot Chocolate"];
// SET ARRAY
NSArray *tempArray = [[NSArray alloc] initWithObjects:drink_1, drink_2, drink_3, drink_4, drink_5, nil];
[self setCoffeeList:tempArray];
// CLEAN UP
[drink_1 release];
[drink_2 release];
[drink_3 release];
[drink_4 release];
[drink_5 release];
[tempArray release];
[super viewDidLoad];
干杯加里
initWithObjects 保留数组中的所有项目。
initWithObjects:计数:
- (id) initWithObjects: (id*)对象计数: (NSUInteger)count;
可用性:OpenStep
这是该类的指定初始化程序。
子类必须重写此方法。
这应该用 count (可能为零)个对象初始化数组。
保留放置在数组中的每个对象。
调用 -init (它除了维护 MacOS-X 兼容性之外什么也不做),并且需要在子类中重新实现才能让所有其他初始化器工作。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)