关于Visual C#,请见“Microsoft Visual C♯”。
Visual C++
开发者微软公司
初始版本1993年2月,​26年前​(1993-02
稳定版本14.16.27027.1 (2019年3月10日,​6个月前​(2019-03-10
操作系统Microsoft Windows
系统平台x86、x86-64、Itanium
语言英语、法语、德语、西班牙语、俄语、意大利语、韩语、日语、汉语(另有捷克语、葡萄牙语(巴西)、波兰语、土耳其语仅提供语言包)
类型集成开发环境
许可协议微软的最终用户许可协议
网站docs.microsoft.com/en-us/cpp/

Microsoft Visual C++(简称Visual C++MSVCVC++VC)是微软公司的C++开发工具,具有集成开发环境,可提供编辑C语言,C++以及C++/CLI等编程语言。VC++集成了便利的调试工具,特别是集成了微软Windows视窗操作系统应用程序接口(Windows API)、三维动画DirectX API,Microsoft .NET框架。当前最新的版本是Microsoft Visual C++ 2019。

风格

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

发行版本

Visual C++被集成在Visual Studio之中,但仍可单独安装使用。

通常细分为多个发行版本。以Visual C++ 2013为例:

其中Microsoft Visual C++ 2013 Express可从MSDN的网站免费下载使用,并且不限制商业使用(但不包含MFC)。

历史

Visual C++的前身是Microsoft C/C++。还有相关产品:Microsoft QuickC 2.5 与Microsoft QuickC for Windows 1.0. Visual C++ 编译器仍然叫做Microsoft C/C++。例如Visual C++ 2015 Update 2的版本号是19.00.23918.

16-bit版本

32-bit版本

32/64 - bit版本

MSC版本列表

MSC编译器:

MSVC++ 14.15 _MSC_VER == 1915 (Visual Studio 2017 version 15.8)MSVC++ 14.14 _MSC_VER == 1914 (Visual Studio 2017 version 15.7)MSVC++ 14.13 _MSC_VER == 1913 (Visual Studio 2017 version 15.6)MSVC++ 14.12 _MSC_VER == 1912 (Visual Studio 2017 version 15.5)MSVC++ 14.11 _MSC_VER == 1911 (Visual Studio 2017 version 15.3)MSVC++ 15.0 _MSC_VER == 1910 (Visual Studio 2017)MSVC++ 14.0 _MSC_VER == 1900 (Visual Studio 2015)MSVC++ 12.0 _MSC_VER == 1800 (Visual Studio 2013)MSVC++ 11.0 _MSC_VER == 1700 (Visual Studio 2012)MSVC++ 10.0 _MSC_VER == 1600 (Visual Studio 2010)MSVC++ 9.0  _MSC_VER == 1500 (Visual Studio 2008)MSVC++ 8.0  _MSC_VER == 1400 (Visual Studio 2005)MSVC++ 7.1  _MSC_VER == 1310 (Visual Studio 2003)MSVC++ 7.0  _MSC_VER == 1300MSVC++ 6.0  _MSC_VER == 1200MSVC++ 5.0  _MSC_VER == 1100MSVC++ 4.2  _MSC_VER == 1020MSVC++ 4.0  _MSC_VER == 1000MSVC++ 2.0  _MSC_VER == 900MSVC++ 1.0  _MSC_VER == 800MSC    7.0  _MSC_VER == 700MSC    6.0  _MSC_VER == 600MSC    5.0  _MSC_VER == 500MSC    4.0  _MSC_VER == 400MSC    3.0  _MSC_VER == 300 第一个微软自行开发,兼容K&R及随后的ANSI C语言标准1985年发布。MSC    2.0  _MSC_VER == 200 增加了Large模式(用于16位编程)。MSC    1.0  _MSC_VER == 100 基于{{tsl|en|Lattice C}},发布于1983年。

语言标准支持

C99

在Visual C++ 2012以前,完全不支持C99与C11的新特性,仅支持1989年版的ANSI C。Visual C++ 2012开始在C模式下支持C99的部分特性,如designated initializers、compound literals、_Bool类型。Visual C++ 2013很大改进了对C99特性的支持。 Visual C++ 2015基本上完整支持了C99标准库,但需要编译器尚未支持的C99语言特性的那部分标准库除外。

C++

至VC++2017 Versi 15.7已经完全实现了C++17

详细情况见

工具链生态环境

编译时,根据项目是调试版还是发布版,动态还是静态链接运行时库,编译器可自动使用默认库。如果使用编译选项/nodefaultlib,需要显式指定使用的库。对于VC++2015,所有下述库均为多线程:

情形编译选项预处理directivesCRT初始化库
(均为静态链接)
vcruntime库vcruntime DLLUniversal CRTUCRT DLLStandard C++库
Release DLLs/MD_MT, _DLLmsvcrt.libvcruntime.libvcruntime<version>.dllucrt.libucrtbase.dllMSVCPRT.LIB
是MSVCP<version>.dll的输入库
Debug DLLs/MDd_DEBUG, _MT, _DLLmsvcrtd.libvcruntimed.libvcruntime<version>d.dllucrtd.libucrtbased.dllMSVCPRTD.LIB
是MSVCP<version>D.dll的输入库
Release Static/MT_MTlibcmt.liblibvcruntime.libNonelibucrt.libNoneLIBCPMT.LIB
Debug Static/MTd_DEBUG, _MTlibcmtd.liblibvcruntimed.libNonelibucrtd.libNoneLIBCPMTD.LIB
Mixed Release Static/clr_MTmsvcmrt.lib
Mixed Debug Static/clr_MTmsvcmrtd.lib
Pure Release Static(过时)/clr:pure_MTmsvcurt.lib
Pure Debug Static(过时)/clr:pure_MTmsvcurtd.lib

Visual C++运行时库

Visual C++编译出的应用程序,其运行环境通常需要安装Visual C++运行时库。官方下载网址见。

www.zuoweixin.com
问题反馈联系QQ:暂无联系方式,也可发qq邮箱。