我正在学习视觉工作室。如果我已经设置/Wall
,我会收到一些看似不健康的警告信息,尽管我的应用程序编译得很好。
这是正常的吗?更改错误级别将停止消息。它看起来好像都与C ++ STL或它的头文件有关 - 同样的事情?
如果我使用code :: blocks(GCC)构建程序,那么尽管警告级别相同,但不会报告任何错误。
这里发生了什么?
更新:
visual studio /Wall
输出:http://pastebin.com/FBGLd2Hb
visual studio /W4
输出:http://pastebin.com/YuWKVS9G
代码实际上来自Wrox Professional C ++。 我使用警告这个词可能有误?
答案 0 :(得分:4)
使用g ++ -Wall
不会打开所有警告,只是一个实际的子集。我怀疑MSVC /Wall
会发出更多警告而不是实际警告。 MSVC非常热衷于警告。
MSVC使用/W4
作为高警告级别。
您必须关闭MSVC 愚蠢的警告;您可以使用我的anti-MSVC-sillywarnings header。
干杯&第h。,