Block是IOS4.0之后新增的一种语法结构,也称为闭包(closure)。类似于C语言的函数指针。
Block是对象与对象的之间的通信方式。与代理一样也是一对一的传值方式。
注意:
1.使用block引用局部变量,会被当做是常量,添加__block修饰符,才可以修改
2.block引用局部对象,会retain该对象
3.block里引用全局变量,会把全局变量所在的对象retain,会引起循环引用,导致内存泄漏,解决循环引用,在MRC中使用__block修饰,ARC中使用__weak修饰。