您的位置:首页 > 其它

_MSC_VER

2010-07-24 10:09 260 查看
#if _MSC_VER > 1000
这是微软的预编译控制。
在_MSC_VER较小时,它对一些东西的支持与新版不同。
_MSC_VER分解如下:
MS:Microsoft(微软)的简写
C:MSC就是Microsoft出的C编译器。
VER:Version(版本)的简写。

全部加在一起就是:Microsoft的C编译器的版本

#if _MSC_VER > 1000//如果MFC的版本大于4.2(可能是4.2,具体4.2与1000之间如何转换不清楚)
#pragma once//这个头文件只编译一次,为了类库的兼容性考虑,像以前的C的类库
#endif // _MSC_VER > 1000//结束条件编译

--------------------------------------------------------------------------------

  _MSC_VER 定义编译器的版本。下面是一些编译器版本的_MSC_VER值(参见扩展阅读中的参考文献2的链接)
  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++ 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的链接。
--------------------------------------------------------------------------------

WIKI:

Microsoft Visual C++,(简称Visual C++、MSVC、VC++或VC)微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。VC++集成了便利的除错工具,特别是集成了微软视窗程序设计(Windows API)、三维动画DirectX API,Microsoft .NET框架。目前最新的版本是Microsoft Visual C++ 2008。

风格
Visual C++以拥有“语法高亮”,IntelliSense(自动编译功能)以及高级除错功能而著称。比如,它允许用户进行远程调试,单步执行等。还有允许用户在调试期间重新编译被修改的代码,而不必重新启动正在调试的程序。其编译及建置系统以预编译头文件、最小重建功能及累加链接著称。这些特征明显缩短程序编辑、编译及链接的时间花费,在大型软件计划上尤其显著。

历史
Visual C++最初叫做Microsoft C/C++。

Visual C++ 1.0,集成了MFC 2.0,是Visual C++第一代版本,1992年推出,可同时支持16位处理器与32位处理器版,可算是Microsoft C/C++ 7.0的更新版本。
Visual C++ 1.5,集成了MFC 2.5,增加了“目标文件链接嵌入 (OLE)2.0和支持MFC的开放式数据库链接(ODBC)。这个版本只有16位的,也是第一个以CD-ROM为软件载体的版本。这个版本也没有所谓“标准版”。它是最后一个支持16位软件编程的软件,也是第一个支持基于x86机器的32位编程软件。
Visual C++ 2.0,集成了MFC 3.0,第一个只发行32位的版本。这个版本提前发行了,几乎成了一个“丢失的版本”。这是因为那个时候Windows 95(开发代码为"Chicago")还没有发行,而Windows NT又只占有很小的市场份额。该版本用户可以通过微软公司的订阅服务(Microsoft Subscription Service)升级至2.1和2.2版本。微软公司在这个版本中集成并升级了Visual C++ 1.5,作为2.0版本(Visual C++ 1.5升级后版本号:1.51)以及2.1版本(Visual C++ 1.5升级后版本号:1.52)的一部分。Visual C++ 2.x附带了16位和32位版本的CDK,同时支持Win32s的开发。Visual C++ 2.2及其后续版本不再升级Visual C++ 1.5(尽管它一直被集成至Visual C++ 4.x)。尽管出生的比Windows 95早,这个版本的发行日期还是非常接近Windows 95,可是当Windows 95发行时,Visual C++ 4.0也已经发行了。因此很多程序开发者直接从1.x过渡到4.0,把2.x跳过去了。
Visual C++ 4.0,集成了MFC 4.0,这个版本是专门为Windows 95以及Windows NT设计的。用户可以通过微软公司的订阅服务(Microsoft Subscription Service)升级至4.1和4.2版本(此版本不再支持Win32s开发)。
Visual C++ 5.0,集成了MFC 4.21,是4.2版以来比较大的一次升级。
Visual C++ 6.0,集成了MFC 6.0,于1998发行。发行至今一直被广泛地用于大大小小的项目开发。但是,这个版本在Windows XP下运行会出现问题,尤其是在调试模式的情况下(例如:静态变量的值并不会显示)。这个调试问题可以通过打一个叫“Visual C++ 6.0 Processor Pack”的补丁来解决。奇怪的是,这个网页强调用户也必须运行Windows 98、Windows NT 4.0、或Windows 2000。
Visual C++ .NET 2002(也即Visual C++ 7.0),于2002年发行,集成了MFC 7.0,支持链接时代码生成和调试运行时检查。这个版本还集成了Managed Extension for C++,以及一个全新的用户界面(与Visual Basic和Visual C#共用)。这也是为什么Visual C++ 6.0仍然被广泛使用的一个主要原因。
Visual C++ .NET 2003(也即Visual C++ 7.1),集成了MFC 7.1,于2003年发行,是对Visual C++ .NET 2002的一次重大升级。
eMbedded Visual C++,用于Windows CE操作系统。Visual C++作为一个独立的开发环境被Microsoft Visual Studio 2005所替代。
Visual C++ 2005(也即Visual C++ 8.0),集成了MFC 8.0,于2005年11月发布。这个版本引进了对C++/CLI语言和OpenMP的支持。
Visual C++ 2008(也即Visual C++ 9.0),于2007年11月发布。这个版本支持.NET 3.5,是目前最新的版本。
Visual C++ 2010(也即Visual C++ 10.0),将于2010年发布。目前仍在开发中,Visual C++开发团队考虑使用SQL Server Compact格式的数据库来存储源码的相关信息[1].本版也加入了现代化的C++并行计算库-Parallel Patterns Library,部分支持C++0x。本版建构于.NET 4.0之上,但仍支持机器码的编译。
当前稳定版本
Visual C++被集成在Visual Studio之中,但仍可单独安装使用。

目前有四种最新版本:

Visual C++ 2008 Express
Visual C++ 2008 Standard标准版
Visual C++ 2008 Professional专业版
Visual C++ 2008 Team System团队系统版
其中Microsoft Visual C++ 2008 Express可从MSDN的网站免费下载使用,并且不限制商业使用。

参见
^ Visual C++ Team Blog.IntelliSense, part 2: The Future.于2008年3月12日查阅.
Microsoft Visual C#
外部链接
(正体中文)Visual Studio Express首页
(正体中文)Visual Studio Express Visual C++ 下载页面
(简体中文)Visual Studio Express首页
(简体中文)Visual Studio Express下载页面
(英文)微软的Visual C++开发者中心
(英文)微软的Visual C++ 开发社区
(英文)Building Win32 Applications Using Visual C++ 2005 Express
(英文)Visual C++ STL Templates Tutorial
(英文)Visual Studio Express首页
(英文)Visual Studio Express下载页面
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: