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

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

作者: 温水煮青蛙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