Visual Studio中MD与MT的区别及运行库类型选择

MT与MD的区别

  • /MT:是multithread-static version,是多线程静态版本的意思,项目会使用运行时库的多线程静态版本,编译器会将LIBCMT.lib放入.obj文件中,以便链接器使用LIBCMT.lib解析外部符号;
  • /MTd:是定义了_DEBUG和/MT,是/MT类型的debug版本;
  • /MD:是multithread-dll version,是多线程dll版本的意思,项目会使用运行时库的多线程动态dll版本,编译器会将MSVCRT.lib放入.obj文件中,在编译项目时,它会静态链接MSVCRT.lib,但在实际运行过程中,它会链接使用MSVCR90.dll;
  • MDd:是定义了_DEBUG和/MD,是/MD类型的debug版本;

用/MT类型生成的,则它所调用的运行时库为LIBCMT.lib

用/MD类型的,工程在链接时会调用MSVCRT.lib和MSVCR90.dll

相关推荐
计算机安禾12 小时前
【数据结构与算法】第10篇:项目实战:学生信息管理系统(线性表版)
开发语言·数据结构·算法·visual studio
WHS-_-202213 小时前
LDM代码学习日记
ide·python·pycharm
wenroudelang888813 小时前
Visual Studio的C#实例--2个窗体之间跳转
ide·c#·visual studio
汽车芯猿15 小时前
Visual Studio 2015 完整安装与问题解决指南(含证书配置、包丢失修复及工程加载失败处理)
ide·visual studio
golang学习记15 小时前
IDEA 2026.1:这些 核心功能免费开放!
java·ide·intellij-idea
charlie11451419117 小时前
通用GUI编程技术——Win32 原生编程实战(十八)——GDI 设备上下文(HDC)完全指南
开发语言·c++·ide·学习·visual studio·win32
肖恭伟17 小时前
Cursor(VSCode) + clangd 无法跳转 Qt 类/变量
ide·vscode·qt
承渊政道17 小时前
从n-grams到Transformer:一文读懂语言模型基础
深度学习·学习·语言模型·自然语言处理·chatgpt·transformer·机器翻译
ChindongX17 小时前
Visual Studio Code 搭建 SVN环境
ide·vscode·svn
charlie1145141911 天前
通用GUI编程技术——Win32 原生编程实战(十六)——Visual Studio 资源编辑器使用指南
开发语言·c++·ide·学习·gui·visual studio·win32