在Objective-C中,是否可以指定一个方法块参数而不使用typedef?这一定是可能的,就像函数指针一样,但我无法想出获胜的语法而不使用中间的typedef:
typedef BOOL (^PredicateBlock_t)(int);
- (void) myMethodTakingPredicate:(PredicateBlock_t)predicate
只有上面的代码可以编译通过,以下所有代码都会失败:
- (void) myMethodTakingPredicate:( BOOL(^block)(int) ) predicate
- (void) myMethodTakingPredicate:BOOL (^predicate)(int)
而我记不得我尝试过哪些其他组合。