visual studio运行时库MT、MTd、MD、MDd 的区别
生活随笔
收集整理的這篇文章主要介紹了
visual studio运行时库MT、MTd、MD、MDd 的区别
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
msdn上面的解釋:
MT:mutithread,多線程庫,編譯器會從運行時庫里面選擇多線程靜態連接庫來解釋程序中的代碼,即連接LIBCMT.lib庫
MTd:mutithread+debug,多線程調試版,連接LIBMITD.lib庫
MD:MT+DLL,多線程動態庫,連接MSVCRT.lib庫,這是個導入庫,對應動態庫為MSVCRT.dll
MDd:?MT+DLL+debug,多線程動態調試庫,連接MSVCRTD.lib庫,對應動態庫為MSVCRTD.dll
開發多線程程序時(單線程本文不做討論),需要選擇MT、MTd、MD、MDd其中的一個。
?
對于MT/MTd,由于連接運行時庫是LIBCMT.lib/LIBCMTD.lib,這兩個庫是靜態庫,所以此種方式編譯的程序,移到另一臺機器上面也可以正常運行。
但是對于MD/MDd,連接的是動態庫,所以如果另一臺機器上沒有MSVCRT.dll/MSVCRTD.dll時,就提示缺少動態庫這樣的錯誤。
新人創作打卡挑戰賽發博客就能抽獎!定制產品紅包拿不停!總結
以上是生活随笔為你收集整理的visual studio运行时库MT、MTd、MD、MDd 的区别的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 初识HTML、CSS
- 下一篇: 设计模式:简单工厂模式(C++)【看不懂