#ifdef ???
// code for VC++ 2010 compiler
#else
// code for later compiler versions
#endif
我可以使用哪种宏代替???
?我不关心旧的编译器版本。
答案 0 :(得分:3)
对于VS2010或更高版本:
#if _MSC_VER >= 1600
由于VS2010附带的C / C ++编译器是版本16.00.x(由cl.exe
在命令行中显示)。
请参阅http://msdn.microsoft.com/en-us/library/b0084kay%28v=vs.100%29.aspx
对于某些完整性的衡量标准:
Visual Studio _MSC_VER
version value
============= ===========
6 1200
2002 1300
2003 1310
2005 1400
2008 1500
2010 1600
2012 1700
2013 1800
答案 1 :(得分:2)
#if (_MSC_VER == 1600)
//Visual C++ 2010 compiler code here...
应该做你想做的事。从这里开始:How to Detect if I'm Compiling Code With Visual Studio 2008?