首先理解了三個概念:
<!--[if !supportLists]-->1. <!--[endif]-->靜態鏈接庫
這是一個名詞,是.lib庫。
<!--[if !supportLists]-->2. <!--[endif]-->靜態鏈接
在工程設置的Link項中,添加所要鏈接的.lib庫,程序中包含其導出函數對應的頭文件。再編譯時,就會將使用到的靜態庫中的函數一同編譯到目標文件中,目標文件可以是lib庫,dll,exe,ocx等。
<!--[if !supportLists]-->3. <!--[endif]-->動態鏈接
程序再運行時才裝載要使用的函數。動態鏈接一般都是使用Dll——動態鏈接庫。
一直都是使用動態庫,經常是動態庫鏈接一個靜態庫。最近想使用靜態庫鏈接一個靜態庫,可能要好幾層,同事們都說不可以,可我覺得理論上沒有問題,於是就試驗了一下,事實證明是完全可以的。
1. 在VC6.0上,lib庫的工程設置中,是沒有追加靜態庫的地方的,只能再程序中使用語句#pragma comment(lib, "***.lib")來追加。
2. 在VS2005上,我使用的是VS2005,它的工程設置中,依然可以追加依賴的靜態庫。
在使用方式上沒有什麼特殊之處。