MSVC 2015 /Wall有很多没用的信息

MSVC 2015 /Wall has lots of not useful messages

本文关键字:信息 2015 Wall MSVC      更新时间:2023-10-16

即使我为include字符串保存了一个空的程序,即使我在include周围抑制了警告,我仍然会得到很多警告。

复制:

# CMakeLists.txt
add_executable(main main.cpp)
# All warnings, and treat as errors
if(MSVC)
    set_target_properties(main PROPERTIES COMPILE_FLAGS "/Wall /WX")
endif()

// main.cpp
#pragma warning(push, 0) // suppress warnings from dependencies
#include <string>
#pragma warning(pop)
int main()
{
}

即使这样,我也得到了几页的警告,其中第一个是…

main.cpp(8): warning C4710: 'int swprintf_s(wchar_t *const ,const std::size_t,const wchar_t *const ,...)': function not inlined

这是预期的吗?还是我做错了什么?

我是否应该选择要抑制的警告,并在我写的每个文件中抑制它们?

或者,我应该选择启用哪些警告吗?但是,这可能会变成一个冗长的列表,当新的检查可用时,我将不得不维护它。

我查看了这个警告,它指向了这个通常被抑制的警告列表:https://msdn.microsoft.com/en-us/library/23k5d385.aspx.

您可以查看该列表并对您不关心的警告进行全局抑制。我不知道怎么做全球压制。但是那个特别的警告似乎没有用。

找到如何全局抑制警告的链接:https://msdn.microsoft.com/en-us/library/jj715718.aspx.