【发布时间】:2011-01-28 17:36:44
【问题描述】:
我需要帮助解除我的 NSMutableArray 自定义对象。我需要保留数组,所以我在 .h 中添加了一个属性,并在 .m 文件中的 dealloc 中释放它。当我将对象添加到数组时,我会执行以下操作:
myarray = [[NSMutableArray alloc] init];
[myarray addObject:[[mycustomObject alloc]initWithObject:obj1]];
[myarray addObject:[[mycustomObject alloc]initWithObject:obj2]];
现在,我不知道如何释放 mycustomobject。如果我执行以下操作:
[myarray addObject:[[[mycustomObject alloc]initWithObject:obj1] autorelease]];
我稍后访问数组时遇到了问题。请指教。
【问题讨论】:
-
我在最后一行的末尾添加了缺少的括号。这种方法是完全正确的,所以你一定是在做一些奇怪的事情。如果可变数组被自动释放,预计在某些时候它会被释放,尝试使用它会导致崩溃。
标签: objective-c nsmutablearray dealloc memory-management