“不兼容的块指针分配给......”是什么意思?

时间:2013-09-19 05:42:08

标签: objective-c pointers block

我在项目中使用QuickDialog,我升级了他们的库,但是我遇到了很多错误:

incompatible block pointer assigning to....

以下是其中一个例子:

elType.onValueChanged = ^(void){[self eventTypeChanged:nil];};

以前工作正常,但在更新库后,它显示: Incompatible block pointer types assigning to 'void (^) (QRootElement *__strong)' from 'void' (^)(void)'

此错误消息的含义是什么?我该如何解决?感谢。

1 个答案:

答案 0 :(得分:0)

错误表明传入的块没有与方法所期望的匹配的签名。

在这种情况下,elType.onValueChanged需要一个采用QRootElement *__strong参数并返回void的块。您传入的块占用void并返回void,因此不兼容。

我会查看库文档以获取有关块更改的信息。