2019独角兽企业重金招聘Python工程师标准>>>

首先, #pragma 本质上也是声明,一般常用的功能就是打注释、尤其是分段注释

但是#pragma 另外一个强大的功能就是处理编译器警告,用的时候可能就没上一个

功能用的那么多,在代码中处理警告却是极其高效的方法。

其中 clang diagnostic 便是#pragma 第一个功能常用的命令,步骤如下

#pragma clang diagnostic push

#pragma clang diagnostic ignored "-相关命令"

    // 你自己的代码

#pragma clang diagnostic pop

常见用法

1.方法弃用告警

#pragma clang diagnostic push 

  

#pragma clang diagnostic ignored "-Wdeprecated-declarations"

[TestFlight setDeviceIdentifier:[[UIDevice currentDevice] uniqueIdentifier]]; 

  

#pragma clang diagnostic pop

2.不兼容指针类型

#pragma clang diagnostic push  

#pragma clang diagnostic ignored "-Wincompatible-pointer-types"

// 

#pragma clang diagnostic pop

3.循环引用

// completionBlock is manually nilled out in AFURLConnectionOperation to break the retain cycle. 

#pragma clang diagnostic push 

#pragma clang diagnostic ignored "-Warc-retain-cycles"

    self.completionBlock = ^ { 

        ... 

    }; 

#pragma clang diagnostic pop

4.未使用变量

#pragma clang diagnostic push  

#pragma clang diagnostic ignored "-Wunused-variable"

  int a;  

#pragma clang diagnostic pop

#pargma 用法详情:

http://nshipster.cn/pragma/

http://nshipster.com/clang-diagnostics/

相关的命令列表

http://fuckingclangwarnings.com/

进阶:

http://clang.llvm.org/docs/UsersManual.html#diagnostics_pragmas

转载于:https://my.oschina.net/u/2303230/blog/755755

[IOS]clang diagnostic、Wprotocol ..相关推荐

  1. #pragma clang diagnostic

    首先, #pragma 本质上也是声明,一般常用的功能就是打注释.尤其是分段注释 但是#pragma 另外一个强大的功能就是处理编译器警告,用的时候可能就没上一个 功能用的那么多,在代码中处理警告却是 ...

  2. iOS编译FFmpeg、kxmovie实现视频播放

    由于FFmpeg开源框架的功能非常强大,可以播放的视频种类很多,同时添加第三方库kxmovie,实现视频播放,真的是爽爆了,因此今天来说一下关于FFmpeg在iOS手机上的一些配置过程,配置工具,还有 ...

  3. CSS-解决苹果点击高亮、安卓select灰色背景(select下拉框在IOS中背景变黑、出现阴影问题)

    CSS-解决苹果点击高亮.安卓select灰色背景(select下拉框在IOS中背景变黑.出现阴影问题) 参考文章: (1)CSS-解决苹果点击高亮.安卓select灰色背景(select下拉框在IO ...

  4. iOS 中KVC、KVO、NSNotification、delegate 总结及区别

    iOS 中KVC.KVO.NSNotification.delegate 总结及区别 1.KVC,即是指 NSKeyValueCoding,一个非正式的Protocol,提供一种机制来间接访问对象的属 ...

  5. Axure移动端通用元件库rplib格式包含安卓、苹果各种主流手机、平板线框图元件库、IOS系统图标、人物图标、导航和分页、表格元素、各种小图标等

    包含安卓.苹果各种主流手机.平板线框图元件库.IOS系统图标.人物图标.导航和分页.表格元素.各种小图标等 1.本作品由完整演示.元件库版.框架模板三部分组成 • 完整演示的.rp格式文件包含了全部元 ...

  6. iOS 屏幕尺寸、分辨率、适配

    1.iPhone尺寸规格 设备 iPhone 宽 Width 高 Height 对角线 Diagonal 逻辑分辨率(point) Scale Factor 设备分辨率(pixel) PPI 3GS ...

  7. clang diagnostic用例

    clang命令格式大致如下: #pragma clang diagnostic push #pragma clang diagnostic ignored "-相关命令"//需要操 ...

  8. swift 实现iOS手势密码、指纹密码、faceID

    本博客包含了如何实现iOS手势密码.指纹密码.faceID全步骤,包括了完整的代码. 先附上demo地址https://github.com/Liuyubao/LYBTouchID,支持swift3. ...

  9. ios 系统状态栏样式修改_超简单!!! iOS设置状态栏、导航栏按钮、标题、颜色、透明度,偏移等...

    原标题:超简单!!! iOS设置状态栏.导航栏按钮.标题.颜色.透明度,偏移等 1. 要实现以下这些效果都非常简单 2. 废话不多说,先看看实现效果 3. 下面告诉你我为什么说实现这些效果非常简单 比 ...

最新文章

  1. 动态人脸识别系统服务器,动态人脸识别监控管理平台的设计与实现
  2. QS最新世界大学排名发布,清华北大获史上最高名次
  3. 荔枝FM 字体文件 IconFontTextView
  4. 纳税服务系统【异常处理、抽取BaseAction】
  5. vmware6.5.2序列号_备战秋招——计算机网络(2)
  6. kvm虚拟机端口映射(端口转发)到宿主机
  7. POJ - 3974 Palindrome(二分+哈希/马拉车)
  8. 汇编怎么输入_一位过来人的嵌入式汇编语言学习经验
  9. spring-beans模块分析
  10. python怎样使用各个日期赤纬_python--日期操作
  11. php使css无法居中,css怎么整体居中
  12. poj 1088(记忆化搜索)
  13. 力扣-80 删除有序数组中的重复项 II
  14. (转)C# 解析 json
  15. PHP - 如何解析HTML文件
  16. Go 语言高性能编程
  17. Codeforces Round #393 Frodo and pillows
  18. 第三方可视化数据分析图表Pyecharts(下载保存图片(生成的html图片)、zip函数(将数据转换为列表加元组的格式)、南丁格尔玫瑰图、双y轴可视化、饼形图和环形图)
  19. 电子计算机上面的mrc是什么意思,计算器中的M-键是什么功能?
  20. 通用课程表教师表php,利用Access实现学校课程表的科学管理

热门文章

  1. VTK:Utilities之VectorArrayUnknownLength
  2. VTK:隐式函数之BooleanOperationImplicitFunctions
  3. OpenCV图像监视:在Visual Studio调试器中查看内存中图像
  4. OpenGL Overdraw Count透支数的实例
  5. OpenGL伽玛校正测试
  6. OpenGL地形渲染
  7. C++插入排序(附完整源码)
  8. QT的QSvgGenerator类的使用
  9. 经典C语言程序100例之七三
  10. 「Python」unindent does not match any outer indentation level