Chr*_*ker 41 xcode warnings objective-c
这个警告在一些第三方库中出现了很多.
有没有办法在不修改代码的情况下处理它(例如忽略警告)?
如果我必须修改代码来修复它我该怎么办?
这是导致警告的代码块之一:
BOOL FBIsDeviceIPad() {
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
return YES;
}
#endif
return NO;
}
Run Code Online (Sandbox Code Playgroud)
app*_*tus 80
通常使用这样的警告,您可以在文件顶部定义函数原型,例如:
BOOL FBIsDeviceIPad();
Run Code Online (Sandbox Code Playgroud)
但是在C中,大括号之间没有任何内容的方法,即()实际意味着有任意数量的参数.相反的定义应该成为(void)表示没有参数:
BOOL FBIsDeviceIPad(void);
...
BOOL FBIsDeviceIPad(void) {
#if __IPHONE_OS_VERSION_MAX_ALLOWED >= 30200
if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
return YES;
}
#endif
return NO;
}
Run Code Online (Sandbox Code Playgroud)
bos*_*acs 29
在Xcode4中,转到项目的Build Settings.搜索"原型".应该有一个名为"Missing Function Prototypes"的选项; 禁用它.您也可以对相关的特定目标执行此操作.