Xcode警告忽略

来源:互联网 发布:qq飞车休闲区辅助源码 编辑:程序博客网 时间:2024/06/05 15:21
 

Xcode中 cmd+B 之后总会出现各种各样的警告,对于一个对代码有洁癖的人,这种情况很难忍,接下来我们用些特殊手段强制消除这些警告 

 

一、忽略源文件中的警告

  使用编译器宏来操作

#pragma clang diagnostic push#pragma clang diagnostic ignored "警告名称"// 被夹在这中间的代码针对于此警告都会忽视不会显示出来//常见警告的名称//1, 声明变量未使用  "-Wunused-variable"//2, 方法定义未实现  "-Wincomplete-implementation"//3, 未声明的选择器  "-Wundeclared-selector"//4, 参数格式不匹配  "-Wformat"//5, 废弃掉的方法     "-Wdeprecated-declarations"//6, 不会执行的代码  "-Wunreachable-code"#pragma clang diagnostic pop

  例:

#pragma clang diagnostic push //收集当前的警告//忽略在arc 环境下performSelector产生的 leaks 的警告#pragma clang diagnostic ignored "-Warc-performSelector-leaks"// 包含 performSelector 的语句#pragma clang diagnostic pop //弹出所有的警告

  

  当然,也可以在pch等具有大范围作用域的头文件中包含: 

    #pragma clang diagnostic ignored "警告名称"

  如果剔除了push与pop 则后面所有的代码都具有强制消除警告作用

 

  查找某一种警告名称的方法:

    打开一个工程,编译项目(不编译Reveal in Log是灰色的),切换左侧导航区域>>issue navigator,下面[]里面的字符串就是该警告的名称

  

二、忽略工程中的警告

  在项目的 Build Settings 中也可以设置忽略某种或多种类型的警告,不过在这设置的影响范围就是整个项目的了,要三思而后行,不然就是给自己挖坑

  还是上面的例子,在 Build Settings 中找到 Custom Compiler Flags,双击 Other Warning Flags(可以配置 DebugRelease 环境),填入 -Wno-unused-variable

  完成后,编译项目,项目中所有的此类型警告都没有了。Build Settings 中项目全局忽略警告这里所填写的内容规则,仅仅是在第一种方法中找到的警告标识符中的 W 字母后面加上 no- 就可以了


 
 

三、忽略cocoapod项目中的警告

   使用cocoapod引入的第三方,如果第三方库中有警告,可以在podfile文件中增加一句  inhibit_all_warnings!

 

四、忽略.md/.mdown/.h类型警告

   将以上文件从Compile Sources中删除。路径TARGETS > Build Phases > Compile Sources 选中该类型文件删除

 

 

参考资料(戳这里):

>  谈谈Objective-C的警告

>  去掉Xcode中某类型的警告

>  Xcode项目忽略警告

>  部分Xcode编译警告类型

 

原创粉丝点击