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

相关推荐
Lhan.zzZ10 小时前
QML 组件库:VS2022 + Qt 静态库方案
开发语言·c++·qt·visual studio
sunburn-13 小时前
Java堆(Heap)详解与实战教学
java·开发语言·数据结构·ide·算法
一直C16 小时前
Linux应用软件编程|TCP协议与Socket全套编程(三次握手、四次挥手、报文头部、核心机制)
linux·网络协议·tcp/ip·wireshark·vim·visual studio
逐步前行17 小时前
ESP32-S3-VSCode扩展ESP-IDF
ide·vscode·编辑器
171320330计算机毕设编程19 小时前
2027计算机毕设五大方向对比&选题推荐
java·ide·python·算法·django·php·推荐算法
极客猴子20 小时前
iPhone免费版支持思维导图导出的会议APP推荐:导出能力对照
人工智能·智能手机·音视频·机器翻译
2501_9160088920 小时前
Flutter 开发 iOS,项目打包成 IPA,命令与免 Xcode两种方法
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
wabil3 天前
[AI-Talk] codx制作xmind文件技巧
ide·ai编程·myeclipse·xmind
大衛說3 天前
02 · 环境搭建:uv 包管理与现代 IDE
ide·uv
cndes4 天前
安装Miniconda+Jupyter notebook
ide·python·jupyter