NSString为何要用copy?而不是strong?

来源:互联网 发布:php eval 解密 编辑:程序博客网 时间:2024/05/24 22:45

stackOverflow上说法是为了防止mutable string被无意中修改, NSMutableString是NSString的子类, 因此NSString指针可以持有NSMutableString对象.

用代码解释就是

@property (nonatomic, strong) NSMutableString *aa;


@property (nonatomic, strong) NSMutableString *bb;


@property (nonatomic, copy) NSString *cc;


@property (nonatomic, strong) NSString *dd;


self.aa = [NSMutableStringstringWithFormat:@"11"];;

    self.bb = [NSMutableStringstringWithFormat:@"22"];;

    

    self.cc =self.aa;

    self.dd =self.bb;

    

    [self.aaappendString:@"33"];

    [self.bbappendString:@"44"];

    

    DLOG(@"cc:%@",self.cc);//11

    DLOG(@"dd:%@",self.dd);//2244



阅读全文
0 0
原创粉丝点击