1.block的定义 block就是可重复使用的代码段,用来封装和保存代码,效率高,任何时候都可运行,是官方推荐的编程语法; 2.block格式说明 》类型 (^变量名称)(参数类型列表)=^(参数列表){代码体}; - void(^add)(int,int) = ^(int a,int b){
- return a+b;
- };
复制代码 》若block无形参,代码体的参数列表包括括号可以省略3.block的常用方法 》block通常和typedef结合使用,声明block变量后,具体实现可以各自随意 - //定义一个block变量
- typedef int (^Add)(int, int);
- int main(int argc, const char * argv[])
- {
- //定义block实现
- Add add = ^(int a,int b){
- return a+b;
- };
复制代码4.block作用域相关 》block函数内部可以访问外面局部变量,但不能修改 》block函数内部可以访问和修改外面以__block修饰的变量 - int __block ct = 55;
- void(^myblock)()=^(){
- ct = 20;
- NSLog(@"BLOCK好强大!%d",ct);
- };
复制代码
|