C++ #C+中的警告预处理器+;

C++ #C+中的警告预处理器+;,c++,c-preprocessor,C++,C Preprocessor,在C语言中,我们可以使用“警告”在错误窗口中显示警告。 在C++中,代码是一个类似的消息,但是它只是输出一个消息而不是警告。 在C++(Window,VisualStudio)中有一种方法故意向用户显示警告? 我已尝试此#已定义警告调试 它给了我这个错误: 严重性说明项目文件行错误C1021:预处理器命令“警告”无效AecProject stdafx.h 49 在gcc中,#warning以您期望的方式工作良好(例如,像#error一样,它在编译时输出消息,但不会导致编译终止) Visual S

在C语言中,我们可以使用“警告”在错误窗口中显示警告。 在C++中,代码是一个类似的消息,但是它只是输出一个消息而不是警告。 <>在C++(Window,VisualStudio)中有一种方法故意向用户显示警告?

我已尝试此
#已定义警告调试

它给了我这个错误:

严重性说明项目文件行错误C1021:预处理器命令“警告”无效AecProject stdafx.h 49

在gcc中,
#warning
以您期望的方式工作良好(例如,像
#error
一样,它在编译时输出消息,但不会导致编译终止)


Visual Studio中似乎没有
#warning
。相反,您可以尝试使用
#pragma warning
进行试验,尽管这不会发出消息,但允许更改编译器消息的设置。这方面的语法更复杂,可以在这里找到

James McNellis为MSVC中的警告提供了一个极好的解决方案,它利用了
#pragma消息
并匹配编译器的内部标准化警告格式:嗨,我明白了,但错误来自boost/pending/relaxed_heap.hpp,我知道这不是你回答的问题,但如果你有答案,请告诉我。