首页 > 其他 > 详细

block使用场景和注意事项

时间:2018-01-26 01:22:08      阅读:265      评论:0      收藏:0      [点我收藏+]
1.使用场景:一般在一个函数的前面和后面都是重复性的东西,只有中间变化,一般使用block
2.注意事项
01:可以访问外面的变量(作用域问题)
02.里外变量同名的时候,访问里面那个(就近原则)
03.可以访问外面的变量,但是不能改外面的值,因为不是同一个地址(只是copy了一份,值传递)
04.想要改变外面变量的值,需要 变量前 加上 _block (地址传递)
05.block类型存放位置:默认是栈,对block进行copy时,放在碓中
在栈中时,访问外面对象,不会对对象 retain一次
copy后在堆中时,会对对象进行retain一次,造成内存泄漏,不=0
解决方案:对对象进行 _block, 这样不管在堆还是栈,都不会retain一次
 
参考资料:
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 
技术分享图片
 

block使用场景和注意事项

原文:https://www.cnblogs.com/xiaohuihui-/p/8353864.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!