发布网友 发布时间:2022-04-22 06:00
共1个回答
热心网友 时间:2023-11-24 02:17
Microsoft Visual C++ ( MSVC ) 是 Microsoft 的C 、 C ++和C++/CX 编程语言的编译器。
MSVC 是专有软件;它最初是一个的产品,但后来成为Visual Studio的一部分,并以试用软件和免费软件的形式提供。它具有用于开发和调试C++ 代码的工具,尤其是为Windows API、DirectX和.NET编写的代码。
许多应用程序需要可再发行的 Visual C++ 运行时库包才能正常运行。这些包通常于应用程序安装,允许多个应用程序使用该包,而只需安装一次。这些 Visual C++ 可再发行包和运行时包主要是为许多应用程序使用的标准库安装的。
Visual C++以拥有语法高亮、IntelliSense(智能提示)以及高级调试功能而著称。比如,它允许用户进行远程调试,单步执行等。
还有允许用户在调试期间重新编译被修改的代码,而不必重新启动正在调试的程序。其编译及创建预编译头文件(stdafx.h)、最小重建功能及累加链接(link)著称。这些特征明显缩短程序编辑、编译及链接的时间花费,在大型软件项目上尤其显著。
工具链生态环境
1、Universal CRT (UCRT)包含了C99运行时库的函数与全局变量。UCRT现在是Windows component,随Windows 10安装。UCRT的静态库、DLL的导入库、头文件是Windows 10 SDK的一部分。
2、vcruntime库包含Visual C++ CRT实现相关的代码,如异常处理、调试支持、运行时检查、类型信息、实现细节与特定扩展库函数。 vcruntime库相关于特定编译器。
3、CRT初始化库处理进程启动(CRT startup)、内部的逐线程的初始化、终止。CRT初始化库相关于特定编译器。
4、对于本地代码与受管代码混合的情形,使用/clr编译选项,这会动态链接 UCRT与vcruntime,静态链接msvcmrt.lib或msvcmrtd.lib;svcmrt.lib或msvcmrtd.lib提供了受管代码与本地CRT之间的proxy。