随着iOS系统的广泛应用,block也越来越火,现在也基本上普遍了,但是在应用的时候总会遇到点什么问题,那么不知道大家是不是知道都会出现哪些问题呢?就这一问题讲解一下,总结一下block开发应该注意的事。
一、内联(inline)Block
就是将block嵌入到一个函数中
举例说明:
二、要注意的地方
1、内联的block中内部定义的变量自己本身有读写权限
2、block内部要修改外部变量需要将外部变量声明__block
3、Blockretain是无效的,如果要想留住block生命周期,可以用copy来实现,记得release
4、被block的应用的对象,retainCount会自动加1,如果要想破解retaincircle,在对象前加__block,这样block块就不会维护这个对象了
下面的写法如果不加上_blocka无法dealloc
5、在独立的block中不能引用self,如果需要访问可以使用参数传递的方法(可以把其考虑成c+中参数传入函数指针对应copy)**
6、不要随便用.语法
顺便说一下,本人是iOS培训讲师,希望有兴趣的同行们和学生们相互关注,相互沟通,相互学习。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。