美文网首页
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