-(void) vPerformBlockOnAllAutoCompleteHandler:((^)(BGMotherofAutoCompleteHandler * acHandler))block
{
for (BGMotherofAutoCompleteHandler * acHandler in [self arBGKeywordAutoCompleteHandlers]) {
block(acHandler);
}
}
好的,所以block是一个以BGMotherofAutoCompleteHandler为参数的块。我经历了循环并调用了块(acHandler)。
怎么了?
错误是: /business/Dropbox/badgers/BadgerNew/BGSearchController3.m:218:49:期望一种类型。在我看来,我必须在阻止之前添加无效。
所以这是有效的
-(void) vPerformBlockOnAllAutoCompleteHandler1:(void (^)(BGMotherofAutoCompleteHandler * acHandler))block
{
for (BGMotherofAutoCompleteHandler * acHandler in [self arBGKeywordAutoCompleteHandlers]) {
block(acHandler);
}
}
但是,如果块不需要参数,我不需要添加该void。我发现这很奇怪。
答案 0 :(得分:2)
语法为:
- (void)vPerformBlockOnAllAutoCompleteHandler:(void(^)(BGMotherofAutoCompleteHandler*))block
{
for (BGMotherofAutoCompleteHandler * at in [self arBGKeywordAutoCompleteHandlers]) {
block(at);
}
}