Pragma

作者: wpf_register | 来源:发表于2016-07-29 01:19 被阅读39次
    • 在做注释特别是分段注释时,经常会用到 #pargam mark-
    • 但#pargma 另一个强大功能就是处理编译器警告,虽然用得较少,但在处理警告却是极高效的。在此作文,是为防止再次看到时懵逼

    常见用法

    1. 方法弃用警告
     #pragma clang diagnostic push   
     #pragma clang diagnostic ignored "-Wdeprecated-declarations"       
        //产生警告的代码
       #pragma clang diagnostic pop  
    
    1. 不兼容指针类型
    #pragma clang diagnostic push   
    #pragma clang diagnostic ignored "-Wincompatible-pointer-types"   
        //  
     #pragma clang diagnostic pop 
    
    1. 循环引用
    #pragma clang diagnostic push  
    #pragma clang diagnostic ignored "-Warc-retain-cycles"  
            self.completionBlock = ^ {  
                ...  
            };  
     #pragma clang diagnostic pop 
    
    1. 未使用变量
    #pragma clang diagnostic push   
    #pragma clang diagnostic ignored "-Wunused-variable"   
      int a;   
    #pragma clang diagnostic pop  
    
    1. 使用不存在的方法名
      #pragma clang diagnostic push
     #pragma clang diagnostic ignored "-Wundeclared-selector"
         //code
     #pragma clang diagnostic pop
    

    警告类型

    如图所示,点击 Reveal in Log 右侧日志中中括号内容即是

    点击Reveal in Log

    如果想全工程忽略警告,如下图,将警告类型做修改
    -Wunused-variable 改成 -Wno-unused-variable
    -W-deprecated-declarations 改成 -Wno-deprecated-declarations


    other warning

    相关文章

      网友评论

          本文标题:Pragma

          本文链接:https://www.haomeiwen.com/subject/cyxzjttx.html