美文网首页
如何令自己所写的对象具有拷贝功能

如何令自己所写的对象具有拷贝功能

作者: 温水煮青蛙a | 来源:发表于2018-04-28 10:53 被阅读0次
.h
#import <Foundation/Foundation.h>

@interface Person : NSObject<NSCopying>

@property (nonatomic, assign) NSInteger age;

@property (nonatomic, copy) NSString *name;

@end
.m
#import "Person.h"

@implementation Person

- (id)copyWithZone:(NSZone *)zone {
    
    Person *person = [[[self class] allocWithZone:zone] init];
    person.age = self.age;
    person.name = self.name;
    
    return person;
}

@end
调用
Person *person = [[Person alloc] init];
    person.age = 10;
    person.name = @"name";
    
    Person *person1 = [person copy];
    person1.age = 11;
    person1.name = @"name1";
    NSLog(@"person.age==%ld", person.age);//person.age==10
    NSLog(@"person.name==%@", person.name);//person.name==name
    NSLog(@"person1.age==%ld", person1.age);//person1.age==11
    NSLog(@"person1.name==%@", person1.name);//person1.name==name1
    

相关文章

网友评论

      本文标题:如何令自己所写的对象具有拷贝功能

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