![](/img/trans.png)
[英]Can I compile using VS2008's C++ compiler using VS2010 and only the Server 2008 Platform SDK?
[英]Determine when using the VC90 compiler in VS2010 instead of VS2008?
是否有一个(特定于Microsoft的)CPP宏来确定我何时在Visual Studio 2010中使用VC9编译器而不是Visual Studio 2008? _MSC_VER
返回编译器版本,因此使用VS2010多目标功能,我将获得与VS2008相同的结果。
想要知道差异的原因是我创建了一个新的VS2010项目,其中包含从较大项目中删除的代码。 我只是“原样”离开了VS2008的东西,因为无论如何我们都将很快离开VS2008,并且我不想经历创建vcproj文件和新的vcxproj的麻烦 。
现在,我只是定义了自己的宏以指示代码是否已编译到其自己的DLL中。 它工作得很好,但是如果有一些更优雅的东西,那就太好了。
_MSC_VER
返回编译器版本
听起来这就是您真正想要的(或者我误会了吗?)。
如果使用的是VS2008的编译器(令人困惑的也称为VC9或cl.exe 15.0),则_MSC_VER
将返回一个大于或等于1500的值。如果使用了VS2010的编译器(也称为VC10或cl.exe 16.0),则_MSV_VER
值为1600。
似乎没有解决方案,即使自定义宏不是我想要的那么优雅,它也可以工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.