美文网首页
iOS-__block和__weak区别

iOS-__block和__weak区别

作者: doudo | 来源:发表于2017-08-23 16:11 被阅读12次

    一、__weak:

    __weak只能在ARC下使用,且只能修饰对象,不能修饰基本数据类型(int等),弱引用,可以block解决循环引用问题。

    二、__block:

    __block既能再ARC下使用,也能在 MRC下使用。既能修饰对象又能修饰基本数据类型。

    • ARC、MRC区别:__block对象在ARC下可能会导致循环引用,非ARC下会避免循环引用。
    • ARC、MRC共同点:block内对于栈上的数据不能修改,使用__block修饰以后放到了堆上就可以修改了。

    如有错误之处,望留言指正。

    相关文章

      网友评论

          本文标题:iOS-__block和__weak区别

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