c++ - 将基于 Mingw32 的代码移植到 msvc2008

标签 c++ debugging visual-c++ cross-platform mingw

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

我安装了 VS2008 并运行了编译。由于 make 不能像 nmake 那样工作,所以有很多问题。

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

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

最佳答案

使用 _MSC_VER宏。如果已定义,则说明您正在使用 Visual Studio:

 #ifdef _MSC_VER
 ... MSVC code ...
 #else
 ... other compiler ...
 #endif

关于c++ - 将基于 Mingw32 的代码移植到 msvc2008,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/464788/

相关文章:

Java:SSL 身份验证/SSL 调试问题

git - 使用 Git 撤消临时更改

c++ - 奇怪的 MSC 8.0 错误 : "The value of ESP was not properly saved across a function call..."

c++ - 不允许使用预期的表达式/类型名称

c++ - vector 作为函数的参数 (int**)

c++ - 如何使用 llvm 链接器?

c++ - 在 VS2017 中使用整数作为 OutputDebugString

C++ 嵌套 For 循环

c++ - 在运行时为随机分布类成员设置最小和最大界限?

C++11 线程卡在锁定互斥锁上