3.block访问外部变量
1>block内部可以访问外面的变量
2>默认情况下,block内部不能修改外面的局部变量
3>给局部变量加上__block关键字,这个局部变量就可以在block内部修改
4.利用typedef定义block类型
typedef int (^MyBlock)(int, int);
// 以后就可以利用MyBlock这种类型来定义block变量
MyBlock b;
MyBlock b1, b2;
b1 = ^(int a, int b){
return a+b;
};
MyBlock b3 = ^(int n1, int n2){
return n1-n2;
}; |
|