先说,带参数的
返回值 ^(block变量名) (参数类型……) = ^(block参数名 虚参……){
代码块
};
为什么先说,带参数的,因为,带参数的各种参数齐全,而不带参数的,只是去掉参数而已如:
返回值 ^(block变量名) () = ^(){
代码块
};
其中,上边的两个小括号(),可以省略。但是还是不要省略的好,因为在这种情况下会报错
@property (copy, nonatomic) int (^startBlock);
添加(),就好了
还有一点是,block是数据类型。所以每个block后边都要分号。