VS 多线程调试和多线程DLL调试选项功能

        区别是动态链接还是静态链接C运行时库(C runtime Library, CRT)。

        如果是动态链接(MD/MDd),你的程序就依赖C运行时的动态链接库(比如VS2010的msvr100.dll),当你的程序在其他没有这个dll的电脑上运行就会出现错误(找不到这个dll)。

        如果是静态链接(MT/MTD),C运行库直接链接到你的程序里,你的程序就不依赖C运行时库的dll了。

         标准WINDOWS库和DLL中使用MFC,都是使用动态链接,那么对应选选择多线程DLL选项,对于静态库中使用MFC,那么对应的调试选项选择多线程既可。

        注意:对于 exe依赖的DLL或.lib,下述选项需要保持一致,否则如即使编译通过,程序运行时,也可能崩溃。

VS 多线程调试和多线程DLL调试选项功能_第1张图片


VS 多线程调试和多线程DLL调试选项功能_第2张图片
        微软是推荐是用动态链接的,因为这种链接方式可以减少可执行文件的大小、可以减少内存的使用、避免链接问题。

你可能感兴趣的:(C/C++/MFC,microsoft)