gpt4 book ai didi

objective-c - 为什么我的数组保持为空?

转载 作者:行者123 更新时间:2023-12-03 16:56:04 25 4
gpt4 key购买 nike

嗨,我是 objC 菜鸟。我在用对象填充 NSMutableArray 时遇到问题。

for(id p in tmpArray){
Person *person = [[Person alloc] init];
person.usrName = p;
[persons addObject:person]; // after this line the persons
// array is still empty
[person release];
}

Persons 是一个 NSMutableArray 属性,问题是它是空的。是否太早释放了 person 对象,或者我实例化错误了?

最佳答案

您需要在 -init 方法中初始化数组,如下所示:

NSMutableArray *array = [[NSMutableArray alloc] init];
self.persons = array; // will be automatically retained
// because you're using the property
[array release]; // we alloced - we release it

不要忘记释放它:

-(void)dealloc {
self.persons = nil; // previous value of property 'persons' will be released
[super dealloc];
}

关于objective-c - 为什么我的数组保持为空?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2063843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com