- 编译中出现以下警告,-Wunused-parameter,原因是由于函数参数未使用
- 在提示警告函数里面添加Q_UNUSED(arg1);
- 在pro工程文件最后加入代码:QMAKE_CXXFLAGS += -Wno-unused-parameter
-
这种方式在下面的版本中无效了,分析其生成的makefile可以推测出,QMAKE_CXXFLAGS 在系统定义的MAKE_CXXFLAGS前进行了导入
- 而系统的FLAG中打开了所有的warnning -Wall
-
QMAKE_CFLAGS_WARN_ON += -Wall -W
-
更为直接的方式是,修改 mkspec下的 .conf文件,我的配置是下面的形式
- 这样不需要单独修改每个工程了
- 手动删除无用的变量
说明
- 理想情况下,应该手动排除每一个warnning,实际工程中,部分代码可能是用机器生成的,为了实现方便,往往遵循的是“极大原则”,定义一个超集来囊括所有的情况,这样就不可避免地出现未使用变量或未使用参数
- 这样更加重要的warnning就被掩盖在了这些已知的警告中了,所以需要屏蔽一些通用的警告,显露出重要的警告
- 未赋值
- 未返回
- 类型不匹配