由于我需要将类似的对象添加到数组中,因此我以这种方式创建了新字典。
NSMutableDictionary* existingStepDict = [[[arrayForSteps objectAtIndex:0] mutableCopy] autorelease];
[arrayForSteps addObject:existingStepDict];
[existingStepDict release];
现在,这里发生的情况是,稍后当我在任何一本字典中更改某些内容时,另一本也会更新。我要求这两个字典独立运行。
为此,我浏览了代码是这样的字典的深拷贝。
NSMutableDictionary* existingStepDict = [[[arrayForSteps objectAtIndex:0] mutableCopy] autorelease];
NSMutableDictionary* destination = [NSMutableDictionary dictionaryWithCapacity:0];
NSDictionary *deepCopy = [[NSDictionary alloc] initWithDictionary:existingStepDict copyItems: YES];
if (deepCopy) {
[destination addEntriesFromDictionary: deepCopy];
[deepCopy release];
}
//add Properties array to Steps Dictionary
[arrayForSteps addObject:destination];
但这也没有反映出差异。我知道我在这里犯了一些小错误。但是有人可以帮我得到我的结果吗?
非常感谢!