原帖地址:http://www.cppblog.com/amyvmiwei/archive/2008/01/01/40164.html
靜態連接庫的創建:
// TestLib01.h
#ifndef TESTLIB_H
#define TESTLIB_H
//聲明函數爲C編譯,連接方式的外部函數
extern "C" int Add(int numa, int numb);
#endif
//TestLib01.cpp
#incldue "TestLib01.h"
int Add(int numa, int numb)
{
return (numa + numb);
}
編譯得到一個.lib的靜態庫,把.lib文件以及頭文件TestLib01.h拷貝到用戶工程目錄下面(兩個文件都放在工程目錄下面,不用吧lib文件放在debug下面)。
下面來一個用戶程序來測試一下
//TestLibProject
//Test.cpp
#include <iostream>
#include <"TestLib01.h">
using namespace std;
#pragma comment(lib,"TestLib01.lib")
int main()
{
cout << Add(1, 4) << endl;
return 0;
}
代碼中#pragma comment( lib , "TestLib01.lib" )的意思是指本文件生成的.obj文件應與TestLib01.lib一起連接。