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

相关推荐
JPower_mr.g15 分钟前
SmartCall v1.0.9 发布:智能体知识库上线,让 AI 客服先查资料再回答
java·ide·人工智能·macos·架构·开源·xcode
Dev _2 小时前
PyCharm旧进程仍在后台运行,导致新实例无法启动或连接
ide·python·pycharm
无巧不成书02185 小时前
Tomcat部署JSP文件完整指南:手动部署+IDEA工程化实现 附404访问错误全排查
java·ide·windows·tomcat·intellij-idea·js
曹牧5 小时前
Eclipse:Subclipse
java·ide·eclipse
allanGold7 小时前
Android Studio 无线调试
android·ide·android studio
2501_915106327 小时前
iOS 单元测试怎么跑?用 KXApp 在 VS Code 里跑 XCTest 和 Swift Testing
ide·vscode·ios·单元测试·个人开发·swift·敏捷流程
1024奇点1 天前
【仓颉语言入门 · 第二篇 第 15 课】
开发语言·数据库·ide·开源
霍霍的袁1 天前
【C++11】左值右值引用与移动语义详细笔记(左值右值、右值引用、移动构造、移动赋值、引用折叠、万能转发)
c++·笔记·学习·visual studio
H.莓飛1 天前
【数据结构】归并与外排序
linux·服务器·c语言·开发语言·数据结构·visual studio
风别鹤2 天前
Xcode pod ‘xxx/xxx.h‘ file not found
ide·macos·xcode