// Block 语法格式
// ^[返回值类型] [参数列表] { 表达式 };
// 例1
^int (int a, int b) {
return a + b;
};
// 例2 没有返回值,可省略返回值类型
^ (int a, int b) {
printf("%d", (a + b));
};
// 例3 没有变量,可省略变量类型
^ {
printf("hello block!");
};
__block int count = 0;
int (^block)(int , int) = ^int (int a, int b) {
// block中使用外部变量,生命变量时要加上__block
++count;
return a + b;
};