【发布时间】:2018-02-15 13:27:18
【问题描述】:
有没有办法在 c++ 代码中找出预处理器,例如NDebug、NOMAXMIN 等?
我可以做类似的事情
#ifdef _DEBUG
std::cout << "in debug mode";
#else
std::cout << "in release mode";
#endif
但是有这么多预处理器,同事也可以自己定义。
我使用 Microsoft Visual Studio 编写 C++ 代码,而不是 gcc。
【问题讨论】:
-
你的意思是所有的预处理指令吗?有一个标准列表,许多编译器供应商也提供了自己的。
-
您的意思是要生成所有已定义宏的列表吗? macro 是一段已命名的代码,例如
_DEBUG,preprocessor 是一种评估宏(除其他外)的软件工具。 -
@spectras 谢谢提醒,我实际上是在微软视觉工作室工作。
-
@athos> 在这种情况下,完整列表可在 Visual Studio documentation 中找到。
标签: c++ visual-studio compilation macros preprocessor