美文网首页
weak和assign的区别

weak和assign的区别

作者: carpond | 来源:发表于2016-12-30 16:36 被阅读22次

    使用weak和assign修饰OC对象的区别

    • 相同点
     1.weak修饰OC对象
     2.assign修饰OC对象和基本数据类型
    
    • 不同点
      1.成员变量
      1.weak生成的成员变量是用__weak修饰的,比如lLCFPersion * __weak _cat
      2.assign生成的成员变量是用__unsafe_unretained修饰的,LCFPerson *__unsafe_unretained
      2.__weak和__unsafe_unretained
      1.都不是强指针(不是强引用),不能保存对象的命
      2.__weak:所指向的对象销毁后,会自动变成nil指针(空指针)
      3.__unsafe__unretained :所指向的对象销毁后,仍旧指向已经销毁的对象

    相关文章

      网友评论

          本文标题:weak和assign的区别

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