【发布时间】:2018-10-11 14:46:16
【问题描述】:
我在整个代码库的多个不同地方都使用这种通用代码风格,但是在一个地方,Xcode 突然不喜欢它了:
static dispatch_once_t once;
dispatch_once(&once, ^{
...
});
它显示以下错误:
Incompatible block pointer types passing 'void *(^)(void)' to parameter of type 'dispatch_block_t _Nonnull' (aka 'void (^)(void)')
样式与代码的其他部分完全相同,所以我有点不知道这里到底是什么问题。
在块的右大括号处也有如下错误:
Control may reach end of non-void block
【问题讨论】:
-
你确定你没有遗漏任何括号或有不需要的退货声明,很难用你发布的内容来判断。
-
@TejaNandamuri 是的,有一个不需要的退货声明。我只是不清楚问题是什么。这只是我使用 Objective-C 的第二周 :)
标签: ios objective-c xcode grand-central-dispatch objective-c-blocks