首页 > 代码库 > Use MFC in a Static Library 和 use MFC in a Shared

Use MFC in a Static Library 和 use MFC in a Shared

在这个选项上什么时候选哪个?

 

如果选择use MFC in a Shared DLL 的话,你编译后的程序中不包含MFC库,所以文件会比较小,但是如果你的程序直接移到一个没有安装过MFC的机器上时,可能会导致找不到MFC的DLL。

如果选择Use MFC in a Static Library ,那你编译后的程序就直接包含了调用MFC的部分的库,文件可能会大一些,但是可以直接移到其他机器上运行。

 

前者是静态链接,发布不用带MFC的DLL文件。    后者是动态连接,发布要带MFC得DLL文件。
如果可执行文件只有一个,使用后者,执行速度快,但文件比较大。 如果可执行文件多个,使用前者,
因为DLL文件是共享的,所以文件体积总量减少。 单个文件也小。加载执行块,但运行速度略比前者慢。  

used in a static library: 使用lib文件。lib是已经编译好的二进制文件,可以与你的工程静态链接起来成为一个exe。    used in a shared dll: 使用dll文件,函数实现隐藏在DLL文件内部,你的工程编译成exe文件后,运行时才调用dll   。

Use MFC in a Static Library 和 use MFC in a Shared