iPhone:复制/克隆

时间:2012-01-16 10:48:43

标签: iphone copy clone

我想复制或克隆我自己的写作课程的对象。 但是,如果我调用复制函数,则仅复制指针。因此,如果我更改复制的对象,原始对象也会更改。

是否有方法/功能来真正克隆对象?

最好的问候 梅拉妮

2 个答案:

答案 0 :(得分:2)

如果对象采用NSCopying协议并实现其单一方法copyWithZone:,则可以复制该对象。

请参阅Object copying


- (id)copyWithZone:(NSZone *)zone{
    MyClass *copy = [[[self class] allocWithZone: zone] init];
    [copy setProperty1:[self property1]];
    return copy;
}

答案 1 :(得分:1)

您所追求的是Deep Copy,您希望复制指针的内容,而不是指向的地址。

关于此列表存在一些堆栈溢出问题:

此外还有来自Techtopia的文章:Here

此处添加的是我的Google搜索:Here