局部变量:
returnType (^blockName)(parameterTypes) = ^returnType(parameters) {...};
属性:
@property (nonatomic, copy) returnType (^blockName)(parameterTypes);
消息参数:
- (void)someMethodThatTakesABlock:(returnType (^)(parameterTypes))blockName;
消息调用时的参数:
[someObject someMethodThatTakesABlock:^returnType (parameters) {...}];
类型定义:
typedef returnType (^TypeName)(parameterTypes);TypeName blockName = ^returnType(parameters) {...};