将 NSMutableDictionary 添加到 NSMutableDictionary 是创建副本还是保留指针。
我希望能够更新第一个 NSMutableDictionary 的内容并在另一个 NSMutableDictionary 中跟踪它 - 例如......
NSMutableDictionary* dictA = [[NSMutableDictionary alloc] init];
NSMutableDictionary* dictB = [[NSMutableDictionary alloc] init];
[dictA setValue:[NSNumber numberWithInt:1 ] forKey:@"number"];
[dictB setValue:dictA forKey:@"dictA"];
[dictA setValue:[NSNumber numberWithInt:2 ] forKey:@"number"];
现在 dictB.dictA.number = 2 吗?
最佳答案
是的,会的。通常,Cocoa 集合类只保留添加到它们的对象(目的:这样你也可以插入不可复制的对象)。
(通过 CoreFoundation 技巧和免费桥接,可以实现复制其元素的 NSArray
。)
关于ios - 将 NSMutableDictionary 添加到 NSMutableDictionary 是否制作副本或保留指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16677743/