美文网首页iOS
iOS -- IBoult weak 与 weak修饰控件,控件

iOS -- IBoult weak 与 weak修饰控件,控件

作者: iOS_成才录 | 来源:发表于2015-11-12 19:20 被阅读271次

    一、weak 修饰控件

    • 如下图可得:weak修饰的控件,在从父控件中移除之后,如果没有强引用的话此外,就会执行dealloc销毁,而且我们也知道weak修饰的会自动清空为null,所以不会存在野指针的问题
      • 所谓野指针:就是访问了一块坏内存,就是指针p指向了一块已经释放的stu对象的内存,[p setAge:10]; 因为对象内存已经释放了,向一块不能访问不属于你的内存 -> 发送setAge消息,就是不合法的,就会引发野指针错误。
      • 而weak,修饰的变量,在内存释放后会自动置为nil,p变为了空指针,[nil setAge:10]; 这样并不会引发任何错误,因为消息根本就发布出去的,不会有任何作用,所以当然也不会引发任何错误


        Snip20150906_36.png

    二、IBoult weak 修饰控件

    Snip20150906_38.png

    相关文章

      网友评论

        本文标题:iOS -- IBoult weak 与 weak修饰控件,控件

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