马东 好好说话:Use?MFC?in?a?Static?Library?和?use?MFC?in?a?Sh...

来源:百度文库 编辑:九乡新闻网 时间:2024/04/28 04:51:14

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

 

如果选择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