首页 > object-c 对象拷贝的问题

object-c 对象拷贝的问题

我怎样拷贝一个一模一样的对象呀,这个对象是我自定义的。

什么浅复制深复制,我用copy好像不行。

我希望有个这样的功能给我

[[NSArray alloc] initWithArray:<#(nonnull NSArray *)#>]


copy 只有 扩展了 nscoping协议才可以使用

一般
NSString NSMutebleString
NSArray NSMutebleArray
NSDictionary NSMutebleDictionary
NSSet NSMutebleSet
这些才能
前面的时 只读 后面可修改
只读 -> 只读

NSArray *a = [NSArray array];
NSArray *b = [a copy];

a b 浅拷贝 地址一样的 只读 复制一份 其实执行的retain 没必要创建新对象

只读 -> 可修改 用mutablecopy
可修改 -> 可修改 用mutablecopy
可修改 -> 只读 用copy
这些都是深拷贝 会创建对象

你的那个 是NSarray 只读的 copy 还是只读 所以是浅拷贝

【热门文章】
【热门文章】