• 了解清除警告


    前言:了解清除警告的一些内容

    最近做的项目中的第三方的内容总是有一些警告 ,感觉对于自己写的代码部分的定位很难找,而且有点看着不爽。看见了几篇文章,地址留在下边,以后有需要再了解更多。

    我所做的事情:看完了相关的文章后,目前我只是在pod file里边加上了 inhibit_all_warnings!

      到项目所在的路径下,重新执行了pod install

      之后果然项目中的通过Cocoapods引入的第三方的警告的内容都消失了

      相关的警告的更细节的内容以后有需要再看

    其实我们平时使用的第三方中也有很多都用到了消除警告的方式

    大概的形式大致是

    AFN中用到了多处消除警告的地方

    #pragma clang diagnostic push
    #pragma clang diagnostic ignored "-Wgnu"
                dispatch_async(self.completionQueue ?: dispatch_get_main_queue(), ^{
                    failure(nil, serializationError);
                });
    #pragma clang diagnostic pop

    #import "UIScrollView+MJExtension.h"中有这么几行代码

    #pragma clang diagnostic push
    #pragma clang diagnostic ignored "-Wunguarded-availability-new"
    
    中间是要忽略警告的代码
    
    #pragma clang diagnostic pop

    SDWebImageDownloader中有这几行代码消除警告的

    #pragma clang diagnostic push
    #pragma clang diagnostic ignored "-Warc-performSelector-leaks"
            id activityIndicator = [NSClassFromString(@"SDNetworkActivityIndicator") performSelector:NSSelectorFromString(@"sharedActivityIndicator")];
    #pragma clang diagnostic pop

    #pragma
    clang diagnostic push  //固定形式 诊断入栈 下边的内容知道pop 警告都被忽略了
    #pragma clang diagnostic ignored "-Warc-performSelector-leaks"  //这里是警告的类型  要忽略的诊断的类型 id activityIndicator = [NSClassFromString(@"SDNetworkActivityIndicator") performSelector:NSSelectorFromString(@"sharedActivityIndicator")];  //这里是要忽略的警告的代码 #pragma clang diagnostic pop  //固定形式 诊断出栈 检查警告的形式从此又开始正常

    
    

    push 消除警告

    在此声明警告相关问题

    然后pop 消除警告

    有点警告有效范围入栈出栈的意思

    之前其实自己写代码其实基本上就是写#pragma mark - 来区分开不同的方法的分界线 标识不同的区域不同的功能

    参考网址:

    #pragma

    iOS清除代码警告

    预处理指令#pragma

    部分警告:Which Clang Warning Is Generating This Message?

    CocoaPods禁止显示警告inhibit_all_warnings

     

    先写到这么多,以后再更新

    如有问题,敬请指正;

    如需转载,请注明出处,谢谢!

    我会不定期分享 iOS 相关技术文章
  • 相关阅读:
    什么叫精通C++
    编程好书推荐
    Reading Notes ofC Traps and Pitfalls
    继承的小问题
    关于strcpy函数
    #pragma once 与 #ifndef 的区别解析
    模板类的友元重载函数
    NET开发人员必知的八个网站
    获取MDI窗体的实例
    .Net下收发邮件第三方公共库
  • 原文地址:https://www.cnblogs.com/ITCoderW/p/8605670.html
Copyright © 2020-2023  润新知