在這個(gè)選項上什么時(shí)候選哪個(gè)?
如果選擇use MFC in a Shared DLL 的話(huà),你編譯后的程序中不包含MFC庫,所以文件會(huì )比較小,但是如果你的程序直接移到一個(gè)沒(méi)有安裝過(guò)MFC的機器上時(shí),可能會(huì )導致找不到MFC的DLL。
如果選擇Use MFC in a Static Library ,那你編譯后的程序就直接包含了調用MFC的部分的庫,文件可能會(huì )大一些,但是可以直接移到其他機器上運行。
前者是靜態(tài)鏈接,發(fā)布不用帶MFC的DLL文件。
后者是動(dòng)態(tài)連接,發(fā)布要帶MFC得DLL文件。
如果可執行文件只有一個(gè),使用后者,執行速度快,但文件比較大。
如果可執行文件多個(gè),使用前者,
單個(gè)文件也小。加載執行塊,但運行速度略比前者慢。
used in a static library:
使用lib文件。lib是已經(jīng)編譯好的二進(jìn)制文件,可以與你的工程靜態(tài)鏈接起來(lái)成為一個(gè)exe。
used in a shared dll:
使用dll文件,函數實(shí)現隱藏在DLL文件內部,你的工程編譯成exe文件后,運行時(shí)才調用dll
聯(lián)系客服