我有一个实例数组,我将最终根据用户设置进行更改。我设置了一个不可改变的NSArray:改变一个实例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]? – CBredlow
因为'arrayWithArray'返回一个自动释放对象,所以你没有泄漏 – MrBr