Block:_ _Block 修饰符

_ _Block 修饰符

1、__block可以用于解决block内部无法修改auto变量值的问题
2、__block不能修饰全局变量、静态变量(static)
3、编译器会将__block变量包装成一个对象

该block


image.png

上面block底层实现为下图


image.png

其中ref如下
image.png

ref内部获取职如下获取


image.png

你可能感兴趣的:(Block:_ _Block 修饰符)