美文网首页
oc深拷贝与浅拷贝

oc深拷贝与浅拷贝

作者: grandhc | 来源:发表于2018-03-10 00:17 被阅读0次

    属性对应的所有权修饰符:

    assign                         __unsafe_unretained 

    copy                             __strong(赋值的是被复制的对象)

    retain                             __strong

    strong                            __strong        

    unsafe_unretained         __unsafe_unretaoned

    weak                __weak

    retain 是指针拷贝,地址形同,内容当然相同,这个对象的retain值+1.

    copy是内容拷贝,改变地址,复制内容,新对象的retain为1,旧对象没有发生变化。对于数组而言,就是copy了指向数组中对应元素的地址,这就是所谓的浅复制。

    retain:setter方法对参数进行release旧值再retain新值,retainCount +1.

    copy:setter方法进行copy操作,先release旧值,再copy出新对象,retainCount为1,减少对上下文的依赖。

    相关文章

      网友评论

          本文标题:oc深拷贝与浅拷贝

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