c-禁用有关在派生类的复制构造函数中显式初始化基本构造函数的警告

我正在使用启用-Wextra的g版本4.2.1.我包括一个库的标头,并且我不断收到有关库中类的以下警告,该警告由-Wextra启用(我已用BaseClass替换了类的实际名称):

warning: base class ‘class BaseClass’ should be explicitly initialized in the copy constructor

我的问题是:如何禁用此警告?例如,-Wextra还启用-Wuninitialized,但是我可以通过传递-Wno-uninitialized作为编译器标志来覆盖该简单方法.关于复制构造函数的警告是否有类似内容?我无法在g手册页或任何其他论坛帖子中找到答案.

解决方法:

根据http://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html(搜索Wextra),它是-Wextra的固有组成部分,不能单独禁用(例如,未通过其自己的-W选项单独列出).

看起来,您可以做的最好的事情就是将库的使用隔离到一个禁用了-Wextra的文件上,或者根本不使用-Wextra并单独启用所有组件(从该链接).

上一篇:python – 仅在警告上打印消息


下一篇:php-MySQLi-不允许属性访问