如何在Objective-C中复制对象

我需要深度复制具有自己对象的自定义对象。我一直在阅读,对于如何继承NSCopying和如何使用NSCopyObject感到有些困惑。



拉莫斯之舞
浏览 520回答 3
3回答

倚天杖

苹果文档说copyWithZone:方法的子类版本应首先将消息发送给super,以合并其实现,除非该子类直接来自NSObject。添加到现有答案@interface YourClass : NSObject <NSCopying>&nbsp;{&nbsp; &nbsp;SomeOtherObject *obj;}// In the implementation-(id)copyWithZone:(NSZone *)zone{&nbsp; YourClass *another = [super copyWithZone:zone];&nbsp; another.obj = [obj copyWithZone: zone];&nbsp; return another;}
打开App,查看更多内容
随时随地看视频慕课网APP