【发布时间】:2012-10-18 16:51:40
【问题描述】:
我有一个实例数组,我最终会根据用户设置进行更改。我将其设置为不可变的 NSArray:
@property (strong, nonatomic) NSArray *pointArray;
当我需要更改数组时,我一直在这样做:
-(void)changePointArray
{
NSMutableArray *tempArray = [NSMutableArray arrayWithArray:self.pointArray];
// Make changes
self.pointArray = [NSArray arrayWithArray:tempArray];
}
这是可以接受的做法还是我在制造泄漏?我是否应该只进行类型转换:
self.pointArray = (NSArray *)tempArray;
或者甚至需要担心将 NSMutableArray 设置为 NSArray?
self.pointArray = tempArray;
【问题讨论】:
-
你试过[self.pointArray mutableCopy]吗?
-
您没有泄漏,因为
arrayWithArray返回了一个自动释放的对象
标签: objective-c ios