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

相关推荐
H.莓飛20 小时前
【数据结构】排序_OJ题(二):划分与选择
linux·服务器·c语言·开发语言·数据结构·visual studio
NamoAmitabha1282 天前
安装“编译器环境”(Android Studio)--deepseek--Cocos --Creator3.8.8
android·ide·android studio
Joecien2 天前
qwen-mt-uni 多模态翻译实战:从接入到四类输入的完整步骤
人工智能·自然语言处理·机器翻译
鑫 源2 天前
Xamarin.Android和Xamarin.iOS在Visual Studio环境变动后同时报错不能编译的解决
visual studio·xamarin·apple android
H.莓飛2 天前
【数据结构】快速排序专题
linux·服务器·c语言·数据结构·visual studio
2501_915909062 天前
KXApp 能打开哪些 iOS 项目?xcodeproj 与 CocoaPods 支持清单
ide·vscode·ios·个人开发·xcode·敏捷流程·cocoapods
1024奇点3 天前
【仓颉语言入门 · 第二篇 第 10 课】
开发语言·数据库·ide·mysql·开源
慧都小项3 天前
图解 MyEclipse Deployment Assembly:资源如何进入部署产物?
java·ide·tomcat·maven·myeclipse·部署排查
2501_916008893 天前
Windows 上写第一个 SwiftUI App,KXBuild 空工程起步,跑到 iPhone 真机
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程