- 版权声明:本文为博主原创文章,未经博主允许不得转载。
BLOCK - 基本使用
- (1)定义BLOCK变量
int (^SumBlock)(int,int);//有参数,返回值类型为int
void (^MyBlock)();//无参数,返回值类型为空```
- (2)利用block封装代码
- (3)Block访问外部变量
>1)Block内部可以访问外部变量;
>2)默认情况下,Block内部不能修改外部的局部变量
>3)给局部变量加上__block关键字,则这个局部变量可以在block内部进行修改。
- (4)利用typedef定义block类型(和指向函数的指针很像)
typedef int(^MyBlock)(int ,int);
以后就可以利用这种类型来定义block变量了。
MyBlock a,b;
a=^(int a,int b){
return a-b;
};
MyBlock b2=^(int n1,int n2){
return n1*n2;
};```