_MSC_VER
来源:互联网 发布:goodreader mac版 编辑:程序博客网 时间:2024/04/30 09:28
_MSC_VER 定义编译器的版本。下面是一些编译器版本的_MSC_VER值(参见扩展阅读中的参考文献2的链接)
MS VC++ 10.0 _MSC_VER = 1600
MS VC++ 9.0 _MSC_VER = 1500
MS VC++ 8.0 _MSC_VER = 1400
MS VC++ 7.1 _MSC_VER = 1310
MS VC++ 7.0 _MSC_VER = 1300
MS VC++ 6.0 _MSC_VER = 1200
MS VC++ 5.0 _MSC_VER = 1100
其中MS VC++ 10.0就是Visual C++ 2010,MS VC++ 9.0就是Visual C++ 2008,MS VC++ 8.0就是Visual C++ 2005。版本名称上的的对应关系参见扩展阅读中的参考文献1的链接.
在程序中加入_MSC_VER宏可以根据编译器版本让编译器选择性地编译一段程序。例如一个版本编译器产生的lib文件可能不能被另一个版本的编译器调用,那么在开发应用程序的时候,在该程序的lib调用库中放入多个版本编译器产生的lib文件。在程序中加入_MSC_VER宏,编译器就能够在调用的时根据其版本自动选择可以链接的lib库版本,如下所示。
#if _MSC_VER >= 1400 // for vc8, or vc9
#ifdef _DEBUG
#pragma comment( lib, "SomeLib-vc8-d.lib" )
#else if
#pragma comment( lib, "SomeLib-vc8-r.lib" )
#endif
#elif _MSC_VER >= 1310 // for vc71
#ifdef _DEBUG
#pragma comment( lib, "SomeLib-vc71-d.lib" )
#else if
#pragma comment( lib, "SomeLib-vc71-r.lib" )
#endif
#elif _MSC_VER >=1200 // for vc6
#ifdef _DEBUG
#pragma comment( lib, "SomeLib-vc6-d.lib" )
#else if
#pragma comment( lib, "SomeLib-vc6-r.lib" )
#endif
#endif
本编辑词条参考自扩展阅读中的链接。关于_MSC_VER更详细的说明请点击阅读扩展阅读中的参考文献3,4的链接。
- 1
http://zh.wikipedia.org/zh-cn/Microsoft_Visual_C%2B%2B
- 2
http://stackoverflow.com/questions/70013/how-to-detect-if-im-compiling-code-under-visual-studio-8
- 3
http://support.microsoft.com/kb/65472
- 4
http://msdn.microsoft.com/en-us/library/b0084kay.aspx
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- _MSC_VER
- 关于 _MSC_VER
- _MSC_VER、_WIN32_WINNT
- _MSC_VER说明
- _MSC_VER __BORLANDC__
- _MSC_VER宏
- _MSC_VER含义
- SQLServer2008设置 开启远程连接
- 开发板修改ip地址
- 模板元编程
- 项目管理网站收集
- 我的LoadRunner学习----资料整理
- _MSC_VER
- HTML5 新的 Input 类型
- 深入理解IPv6
- I/O操作上设置超时之alarm闹钟法
- docAndoid 向目录拷贝文件
- 名人“被死亡”,微博成黑客狩猎围场
- 各类开源项目
- php5学习笔记之正则表达式
- 高斯分布(正态分布)