Azo*_*ous 2 c++ dll settings visual-studio
对于MSVC9 Win32项目,以下选项显示在Configuration Properties - > C/C++ - > Code Geberation - > Runtime Library下:
/ MT,/ MTd,/ MD,/ MDd
是否应该使用DLL/MTd和静态lib/MDd?
谢谢.
这里有两个问题.
首先,您需要选择是否需要CRT 的Debug版本或Release版本.调试版本具有特殊检查和代码路径,旨在帮助您在编写应用程序时捕获错误.你应该不使用它们的应用程序的最终发布版本,因为他们可以在其执行减速,因为它们不是可自由配置.
然后,您需要确定是否要将运行时静态链接到应用程序,或者是否要从DLL 动态使用它.静态链接允许您创建独立的EXE文件,不依赖于任何DLL文件; 它有效地将运行时代码编译到应用程序的二进制文件中.这可以使部署更容易,但其代价是无法利用对运行时DLL进行的安全性和其他更新.您必须重新编译应用程序才能利用新的运行时更新.动态链接是Windows应用程序的典型(和推荐)路径.这意味着您的应用程序将需要存在适当版本的CRT DLL才能运行它,但它允许运行时库轻松更新,这意味着多个程序可以共享相同的代码,从而减小其大小在磁盘上.
因此,/MD意味着动态链接并且/MT意味着静态链接.d每个选项后面的小写表示使用了运行时库的调试版本.
/ MD =动态链接到CRT的发布(可再发行)版本
/ MDd =动态链接到CRT的调试(不可再发行)版本
/ MT =静态链接到CRT的发布(可再发行)版本
/ MTd =静态链接到CRT的调试(不可再发行)版本
有关更多信息,请访问MSDN.
| 归档时间: |
|
| 查看次数: |
2048 次 |
| 最近记录: |