0

我们最近有一个使用 Qt 的声子组件的新要求,它在 Windows 上需要 Visual Studio。

我安装了 VS2008 并运行了编译。由于 make 不能像 nmake 那样工作,存在一堆问题。

由于我需要维护跨平台,我想测试正在使用哪个编译器,以便我可以根据需要进行更改。

一个例子是PRETTY_FUNCTION是一个 g++ 宏,而FUNCDNAME 是 VC 等价的。如何测试我使用哪个编译器来确定要调用哪个宏?

4

1 回答 1

2

使用_MSC_VER宏。如果已定义,则您使用的是 Visual Studio:

 #ifdef _MSC_VER
 ... MSVC code ...
 #else
 ... other compiler ...
 #endif
于 2009-01-21T10:47:30.933 回答