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

相关推荐
女神下凡8 小时前
PyCharm 2026破解激活
ide·python·pycharm
谁刺我心8 小时前
【vscode问题】远程remote cpptools导致linux板子cpu爆炸问题
ide·vscode·编辑器
一直C19 小时前
Linux网络编程|HTTP协议详解(报文、请求方法、状态码)
linux·http·wireshark·vim·visual studio
LaughingZhu1 天前
Product Hunt 每日热榜 | 2026-09-02
java·ide·intellij-idea
小芒果_011 天前
从0到1,将pycharm上的项目上传到github
ide·pycharm·github
水饺编程1 天前
第5章,[Win32 章节] :练习程序,BigFontPic
c语言·c++·windows·visual studio
Lhan.zzZ2 天前
QML 组件库:VS2022 + Qt 静态库方案
开发语言·c++·qt·visual studio
sunburn-2 天前
Java堆(Heap)详解与实战教学
java·开发语言·数据结构·ide·算法
一直C2 天前
Linux应用软件编程|TCP协议与Socket全套编程(三次握手、四次挥手、报文头部、核心机制)
linux·网络协议·tcp/ip·wireshark·vim·visual studio
逐步前行2 天前
ESP32-S3-VSCode扩展ESP-IDF
ide·vscode·编辑器