Objective c 分配给';void(*)(int,const char*,int)和#x27;来自不兼容类型';void(^强)(int,const char*,int)和x27;
我对Objective-C不太熟悉,所以这可能是一个非常明显的错误Objective c 分配给';void(*)(int,const char*,int)和#x27;来自不兼容类型';void(^强)(int,const char*,int)和x27;,objective-c,Objective C,我对Objective-C不太熟悉,所以这可能是一个非常明显的错误 从不兼容类型分配到'void(*)(int,const char*,int)'void(^ uu strong)(int,const char*,int) 我在做这个作业时遇到了上述错误 log_cfg.cb = callback; 这是回调的定义 void (^callback)(int, const char*, int) = ^(int level, const char* data, int len) { .
从不兼容类型分配到'void(*)(int,const char*,int)'void(^ uu strong)(int,const char*,int)
我在做这个作业时遇到了上述错误
log_cfg.cb = callback;
这是回调的定义
void (^callback)(int, const char*, int) = ^(int level, const char* data, int len) {
...
};
错误消息表明
log_cfg.cb
需要函数指针,但您需要提交一个块。块不是函数指针,您不能轻松地将两者混合(swift除外,swift更容易)
如果您不需要值捕获,您可以在(全局?)函数中编写块代码,并提交该函数指针。或者检查log_cfg.cb的属性定义是什么样子的?谢谢,这让我走上了正确的方向!