这一篇我们来研究一下objc的block并回答一下面试中的下列问题:
- 1.block的内部实现,结构体是什么样的
- 2.block是类吗,有哪些类型
- 3.一个int变量被
__block修饰与否的区别?block的变量截获 - 4.block在修改NSMutableArray,需不需要添加
__block - 5.怎么进行内存管理的
- 6.block可以用strong修饰吗
- 7.解决循环引用时为什么要用
__strong、__weak修饰 - 8.
block发生copy时机 - 9.
Block访问对象类型的auto变量时,在ARC和MRC下有什么区别
在回答所有问题之前我们需要了解一些block背景相关的知识. 如下:
- 如何查看Block的内部实现,也就是说转换成背后真正的c/c++代码的block是什么样的?以及转换格式或者原理等. -关于变量的作用域