美文网首页
自定义类实现copy

自定义类实现copy

作者: 孤独_行者 | 来源:发表于2019-01-27 16:57 被阅读0次

1.自定义的类能够被copy只需要遵守NSCopying协议

2.实现协议中的copyWithZone方法

3.在协议额的方法中创建一个副本对象,然后将当前对象的值赋值给副本对象既可

typedef void (^myBlock)(void);

@interface Student : NSObject<NSCopying,NSMutableCopying>

@property (nonatomic, copy) myBlock pBlock;

@property (nonatomic, copy) NSString * name;

@end

NSCopying协议方法

- (id)copyWithZone:(NSZone*)zone{

    //1.创建一个新的对象

    Student*p = [[[selfclass]allocWithZone:zone]init];

    //2.设置当前对象的内容给新的对象

    p.name=_name;

    //3.返回新的对象

    returnp;

}

NSMutableCopying协议方法

- (id)mutableCopyWithZone:(NSZone*)zone{

    //1.创建一个新的对象

    Student*p = [[[selfclass]allocWithZone:zone]init];

    //2.设置当前对象的内容给新的对象

    p.name=_name;

    //3.返回新的对象

    returnp;

}

相关文章

网友评论

      本文标题:自定义类实现copy

      本文链接:https://www.haomeiwen.com/subject/erxnjqtx.html