Xcode 9中去除Block警告

定义一个不带参数的block,通常是如下的方式

typedef void(^myBlock)();

在xcode9中会提示一个警告

This block declaration is not a prototype
Insert 'void'

解决方式可以是如下的几种

方法一:

typedef void(^myBlock)(void);

方法二:

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-Wstrict-prototypes"

typedef void(^myBlock)();

#pragma clang diagnostic pop

方法三:

在工程的设置中将Strict Prototypes设置为NO,则这些警告就消失了

不过这不是一种好习惯,只是暂时性的不让提示这种类型的警告而已

猜你喜欢

转载自www.cnblogs.com/allen12/p/10472331.html