这是一个场景,我有这个Person对象数组。copyWithZone在Person上实现,并按预期工作。
我有一个Person对象数组,但是当我创建数组的副本并修改原始数组中的内容(更改Person的属性)时,它也会更改副本。所以我最好的猜测是,当我在NSArray上调用copyWithZone时,它不会在其元素上调用它。请确认。
发布于 2010-04-29 19:29:40
已确认。Cocoa的集合类通过创建一个浅层副本来实现NSCopying。如果你需要一个深拷贝,你必须自己去实现它。
https://stackoverflow.com/questions/2736823
复制相似问题