如何设置c++ 编译器选线,禁用第三方库的警告

简介:

源地址:http://q.cnblogs.com/q/29557/

问题描述:

c++ 或者gcc选项如何设置,才能禁用第三方库的警告(比如boost库的警告)。#pragma这种在源代码级别禁用警告的方法不算(这种方法不是我需要的)。如果可以,cmake中如何设置(这个算另外一个问题吧。)。(提问前,我已经google,baidu过了,没有找到有用的文献。)

解答:

建议的方式,在使用第三方库的时候创建一个新的头文件称为wrapper header ,包含第三方库的头文件,在你的wrapper header 里面这样写:

#pragma GCC system_header
#include"real_3rd_party_header.h"

从#pragma GCC system_header直到文件结束之间的代码会被编译器视为系统头文件之中的代码. 系统头文件中的代码往往不能完全遵循C标准, 所以头文件之中的警告信息往往不显示. (除非用 #warning显式指明).

 

目录
相关文章
|
4月前
|
C++
c++ - 警告 : treating ‘c-header‘ input as ‘c++-header‘ when in C++ mode, 此行为已弃用
c++ - 警告 : treating ‘c-header‘ input as ‘c++-header‘ when in C++ mode, 此行为已弃用
|
8月前
|
编译器 Linux 测试技术
【C/C++】C语言工程转C++工程,去除旧代码中的警告和错误
将 C语言项目转为C++项目更新维护,处理旧代码中的警告和错误
250 0
|
程序员 C++ 编译器
读书笔记 effective c++ Item 53 关注编译器发出的警告
许多程序员常常忽略编译器发出的警告。毕竟,如果问题很严重,它才将会变成一个error,不是么?相对来说,这个想法可能在其它语言是无害的,但是在C++中,我敢打赌编译器的实现者对于对接下来会发生什么比你有更好的理解。
961 0
|
4天前
|
存储 编译器 C语言
c++的学习之路:5、类和对象(1)
c++的学习之路:5、类和对象(1)
19 0
|
4天前
|
C++
c++的学习之路:7、类和对象(3)
c++的学习之路:7、类和对象(3)
19 0
|
3天前
|
设计模式 Java C++
【C++高阶(八)】单例模式&特殊类的设计
【C++高阶(八)】单例模式&特殊类的设计
|
3天前
|
编译器 C++
【C++基础(八)】类和对象(下)--初始化列表,友元,匿名对象
【C++基础(八)】类和对象(下)--初始化列表,友元,匿名对象
|
7天前
|
存储 安全 C语言
【C++】string类
【C++】string类