大厂常问iOS面试题--Block篇

这一篇我们来研究一下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变量时,在ARCMRC下有什么区别

在回答所有问题之前我们需要了解一些block背景相关的知识. 如下:

  • 如何查看Block的内部实现,也就是说转换成背后真正的c/c++代码的block是什么样的?以及转换格式或者原理等. -关于变量的作用域

阅读更多