Tip-#pragma 处理警告 clang diagnostic 的使用

389 阅读1分钟

使用 #pragma 消除警告⚠️

基本语法

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-相关命令"
    // 你自己的代码
#pragma clang diagnostic pop

iOS常用的忽略警告类型

1. 未使用变量警告

#pragma clang diagnostic push   
#pragma clang diagnostic ignored "-Wunused-variable"  
    NSInteger variableValue;   
#pragma clang diagnostic pop

2. 方法弃用警告

#pragma clang diagnostic push   
#pragma clang diagnostic ignored "-Wdeprecated-declarations"  
    // Some function be deprecated   
#pragma clang diagnostic pop

3. 不兼容指针类型

#pragma clang diagnostic push   
#pragma clang diagnostic ignored "-Wincompatible-pointer-types"  
   //  
#pragma clang diagnostic pop

4. 循环引用

#pragma clang diagnostic push  
#pragma clang diagnostic ignored "-Warc-retain-cycles" 
   //循环引用  
#pragma clang diagnostic pop

5. 内存泄漏警告

#pragma clang diagnostic push  
#pragma clang diagnostic ignored   "-Warc-performSelector-leaks"
    //内存泄漏警告
#pragma clang diagnostic pop

更多警告类型参照这个网站fuckingclangwarnings