使用
#pragma clang diagnostic ignored
语法来强制去除xcode的编译警告,代码举例如下:
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Warc-bridge-casts-disallowed-in-nonarc"
CGImageSourceUpdateData(imageSource, (__bridge CFDataRef)imageData, totalSize == expectedSize);
#pragma clang diagnostic pop
注意,如果不添加
#pragma clang diagnostic push/pop
的话,将导致忽略语句一直有效。
了解opengl或者quartz绘图的童鞋对这个push/pop肯定很容易理解。
要寻找编译器警告类型的方法如下图:
本文介绍如何使用 #pragma clang diagnostic ignored 语法在Xcode中精确地抑制特定编译警告,通过示例展示了如何在非ARC上下文中桥接ARC对象,并强调了使用 push/pop 对警告范围进行控制的重要性。


132

被折叠的 条评论
为什么被折叠?



