Xcode中 cmd+B 以后总会出现各类各样的警告,对于一个对代码有洁癖的人,这种状况很难忍,接下来咱们用些特殊手段强制消除这些警告
ui
使用编译器宏来操做spa
#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
例:.net
#pragma clang diagnostic push //收集当前的警告 //忽略在arc 环境下performSelector产生的 leaks 的警告 #pragma clang diagnostic ignored "-Warc-performSelector-leaks" // 包含 performSelector 的语句 #pragma clang diagnostic pop //弹出全部的警告
固然,也能够在pch等具备大范围做用域的头文件中包含: 
code
#pragma clang diagnostic ignored "警告名称"
orm
若是剔除了push与pop 则后面全部的代码都具备强制消除警告做用
blog
查找某一种警告名称的方法:ip
打开一个工程,编译项目(不编译Reveal in Log是灰色的),切换左侧导航区域>>issue navigator,下面[]里面的字符串就是该警告的名称作用域
在项目的 Build Settings
中也能够设置忽略某种或多种类型的警告,不过在这设置的影响范围就是整个项目的了,要三思然后行,否则就是给本身挖坑字符串
仍是上面的例子,在 Build Settings
中找到 Custom Compiler Flags
,双击 Other Warning Flags
(能够配置 Debug
和 Release
环境),填入 -Wno-unused-variable
get
完成后,编译项目,项目中全部的此类型警告都没有了。Build Settings 中项目全局忽略警告这里所填写的内容规则,仅仅是在第一种方法中找到的警告标识符中的 W
字母后面加上 no-
就能够了
使用cocoapod引入的第三方,若是第三方库中有警告,能够在podfile文件中增长一句 inhibit_all_warnings!
将以上文件从Compile Sources中删除。路径TARGETS > Build Phases > Compile Sources 选中该类型文件删除
参考资料(戳这里):