【发布时间】:2010-12-06 22:31:32
【问题描述】:
假设您有多个 Class 对象声明并将其添加到 NSMutableArray 中,然后您修改 Class 对象和 NSMutableArray 对象。发生什么了?
代码示例:
MyClass *item1;
MyClass *item2;
NSMutableArray *itemHolder;
item1 = [[MyClass alloc] init];
item2 = [[MyClass alloc] init];
itemHolder = [[NSMutableArray alloc] initWithObjects:item1,item2,nil];
-(void)someFunction{
[item1 setVarName:@"item1"];
[item2 setVarName:@"item2"];
for(MyClass *items in itemHolder) [items setVarName:@"item"];
}
我想我通常会在将 item1 和 item2 添加到 itemHolder 后释放它,但它不会违反内存管理规则,对吧?因为在dealloc的最后,你仍然可以释放一切
-(void)dealloc{
[item1 release];
[item2 release];
[itemHolder release];
}
【问题讨论】:
标签: iphone objective-c class nsmutablearray