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

相关推荐
sanzk9 小时前
esp32s3 +arduino ide
ide
脚踏实地皮皮晨13 小时前
003006001_WrapPanel控件
开发语言·c#·.net·wpf·visual studio
霍霍的袁14 小时前
【C++】模板从入门到进阶(函数模板 + 类模板 + 特化 + 分离编译)
开发语言·c++·visual studio
脚踏实地皮皮晨15 小时前
003005002_WPF StackPanel 基类官方类定义逐行深度解析
开发语言·windows·算法·c#·wpf·visual studio
霍霍的袁15 小时前
【C++】string类 从 入门使用 到 底层深浅拷贝模拟实现
开发语言·c++·visual studio
脚踏实地皮皮晨20 小时前
003004002_UniformGrid控件的使用方法
开发语言·c#·.net·wpf·visual studio
时时三省2 天前
VScode 智能插件安装
ide·vscode·编辑器
脚踏实地皮皮晨2 天前
003003001_Grid控件
开发语言·windows·算法·c#·visual studio
令狐前生2 天前
Intellij IDEA 2025 破解安装
java·ide·intellij-idea
知彼解己2 天前
Eclipse Temurin:企业级 Java JDK 发行版的最佳实践
java·ide·eclipse