我想定义类似的NSArray enumerateObjects块:usingBlock什么是正确的语法
我的块如下
typedef void (^MyBlock)(BOOL *);
,我想调用它的一些方法,这样的方法会给我布尔值停止
我该如何继续从这里?
编辑:
我想要做以下
BOOL replaceSomething;
[self someMethod:MyBlock(&replaceSomething)]
< ==这个语法是不正确的
if(replaceSomething){
do something
}
-(void)someMethod:^void(BOOL *stop){
*stop = YES;
}
您的'MyBlock'期望_two(2)_参数,不仅_one(1)_;第一个参数是'id';第二个参数是一个指向BOOL的指针。当你调用你的块时,你只传递_one(1)_参数,仅仅是第二个参数 - 这在句法上确实是不正确的。 (旁边我不知道你在这里真正质疑...) – holex 2014-11-04 14:25:55
我想调用一些方法,它不是我的方法,它是一个委托方法,因为东西发生在我的控制之外,我想要给定的方法告诉我是否根据给定参数的设置来执行某些操作。被调用的方法显示一个alertview,我要求用户告诉我一些东西 – 2014-11-04 14:30:55
我想你必须提供更多关于当前环境的细节,因为你所要求的是非常含糊的;我可以考虑一个你不能做的情景,我可以考虑另一个可能完成的情景。因此,请提供有关正在处理的环境(=类层次结构和依赖关系)的正确描述。 – holex 2014-11-04 14:35:05