美文网首页
iOS开发笔记-可变类型声明属性用copy

iOS开发笔记-可变类型声明属性用copy

作者: 鹏雨燕 | 来源:发表于2019-02-22 23:24 被阅读0次

    在iOS开发中,我们在定义一个NSString的时候都会用copy来修饰,@property (nonatomic, copy)NSString *str;那为什么不用strong呢,我写了一个测试,来简单的说明一下首先把修饰符写成strong 在viewDidLoad的方法中,定义一个可变的字符串@property (nonatomic, strong)NSString *str;

    • (void)viewDidLoad {
      [super viewDidLoad];
      NSMutableString *string = [NSMutableString string];
      [string appendString:@"hello"];
      self.str = string;
      NSLog(@"%@",self.str);
      [string appendString:@"World"];
      NSLog(@"%@",self.str);
      }
      如果声明为copy类型,则在属性的setter方法中会对传入的对象进行拷贝并返回,并不会出现属性指向MutableString对象的地址,因为返回的是新的拷贝对象,新对象操作已经和原来的老对象无关了。

    相关文章

      网友评论

          本文标题:iOS开发笔记-可变类型声明属性用copy

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