美文网首页
NSMutableArray用strong就不会崩溃?

NSMutableArray用strong就不会崩溃?

作者: 紫色冰雨 | 来源:发表于2017-11-11 15:03 被阅读7次

    NSMutableArray 用copy变为不可变数组    用strong和mutableCopy 还是可变数组

    1 NSMutableArray 用copy属性

    1.1 分析 如何传nsarray 给 NSMutableArray copy属性 那么深拷贝 NSMutableArray 对象其实是 不可               变数组 添加删除数据会崩溃

    1.2   对NSMutableArray 用copy变为不可变数组(37行打印mutableArray1 is NSMutableArray = NO)  添加删除数据会崩溃   对nsmutableArray 用

    mutablecopy是可变数组  (26行 self.a 是不可变数组 删除会崩溃)

    2  NSMutableArray 用strong属性

    2.1  NSMutableArray 给NSMutableArray strong还是可变

    2.2 给 NSMutableArray  strong对象传 nsarray也会崩溃, 因为 strong 内存地址不变

    NSMutableArray 对象 指向不可变   添加删除对象就会崩溃  (上图中29行崩溃)

    3 NSArray  用copy属性

    3.1  mutableArray 和Array 赋值给copy属性的 NSArray 那么还是 不可变array

    4  NSArray  用strong属性

    4.1  mutableArray 赋值 NSArray 可变数组 ,    NSArray随着mutableArray变化而变化

    综上所术   用了 copy就是不可变   mutableCopy和拷贝对象一致

       传数据数组还是最好不可变

    NSArray和NSMutableArray 验证 demo

    相关文章

      网友评论

          本文标题:NSMutableArray用strong就不会崩溃?

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