一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

VS下生成與配置靜態(tài)庫與動態(tài)庫(一)

 imelee 2017-09-24

此處僅以VS2010為例,詳細說明一下如何在VS環(huán)境下生成和使用C++的靜態(tài)庫與動態(tài)庫。Qt下生成和使用靜態(tài)和動態(tài)庫后續(xù)再講。

本文僅供初學者參考,如果有問題歡迎大家指正。

       首先簡單地理解一下靜態(tài)庫與動態(tài)庫,以及兩者的區(qū)別。

靜態(tài)庫(*.lib): 將*.cpp文件中的函數(shù)的地址和定義,以及函數(shù)之間的鏈接關(guān)系通通打包,生成的一個二進制文件;

動態(tài)庫(*.lib+*.dll): 動態(tài)庫的*.lib文件,打包的只是*.cpp文件中函數(shù)的地址和鏈接,函數(shù)的具體定義打包在*.dll文件中。

聯(lián)系:

1.二者都不包含函數(shù)的聲明部分,因此調(diào)用這兩種庫的時候,都需要包含相應(yīng)的頭文件(*.h);

2.靜態(tài)庫和動態(tài)庫的*.lib文件,在生成可執(zhí)行文件(*.exe)的時候,都將被打包進*.exe文件中;

區(qū)別:

1.靜態(tài)庫的*.lib文件遠大于動態(tài)庫的*.lib文件;

2.動態(tài)庫的*.dll文件作為可執(zhí)行文件*.exe的附加文件加入到程序中,一般放在*.exe的同級目錄下。


簡單地介紹完這兩種庫,下面來看看在VS下是怎么生成和使用的。

       

靜態(tài)庫:

生成

1.新建一個空的Visual Studio 2010 ,Visual C++, Win32 控制臺工程,取名為“testlib”;

(你可以在向?qū)е羞x擇靜態(tài)庫選項,也可以在后續(xù)的設(shè)置中設(shè)置生成靜態(tài)庫,這里我們在后面進行設(shè)置);

2.構(gòu)造一個類用于測試,這里叫做“CAdd”類,進行的是整數(shù)的加法運算,聲明和實現(xiàn)分別保存在文件“add.h”和

“add.cpp”中:

“add.h”:

  1. #ifndef ADD_H  
  2. #define ADD_H  
  3.   
  4. class CAdd  
  5. {  
  6. public:  
  7.     CAdd();  
  8.     ~CAdd();  
  9.     int add(int a, int b);  
  10. };  
  11.   
  12. #endif  

"add.cpp":

  1. #include "add.h"  
  2. CAdd::CAdd()  
  3. {  
  4.   
  5. }  
  6.   
  7. CAdd::~CAdd()  
  8. {  
  9.   
  10. }  
  11.   
  12. int CAdd::add(int a, int b)  
  13. {  
  14.     return a+b;  
  15. }  

可以在“屬性”->"C++"->"預(yù)編譯頭"下選擇“不使用預(yù)編譯頭”去掉cpp文件的“stdafix.h”的添加要求

3. 選擇編譯為靜態(tài)庫:

在“屬性”->“配置屬性"->”常規(guī)“->”配置類型“下選擇”靜態(tài)庫(.lib)“(默認是"應(yīng)用程序(.exe)"),在此界面上可以更改輸出文件(.lib)所在的目錄,

以及l(fā)ib文件的名稱(默認是工程的名稱):




4.選擇生成解決方案,這時在你剛剛選擇的輸出文件夾下(這里是lib文件夾),已經(jīng)生成了靜態(tài)庫文件,add.lib


使用

       使用很簡單:

1.屬性-》配置屬性-》C/C++->常規(guī)-》附加包含目錄,填寫”add.h“所在目錄;

  2.屬性-》配置屬性-》鏈接器-》附加依賴項,填寫”add.lib“;

3.屬性-》配置屬性-》鏈接器-》附件依賴目錄,填寫”add.lib“所在目錄;

4.在用到CAdd這個類的地方添加頭文件包含#include<add.h>

5.具體調(diào)用CAdd類的函數(shù)


下一篇將介紹如何在Visual Studio下生成和使用動態(tài)鏈接庫


    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    久久黄片免费播放大全| 视频在线播放你懂的一区| 亚洲精品福利入口在线| 在线日韩欧美国产自拍| 加勒比日本欧美在线观看| 久久本道综合色狠狠五月| 欧洲一区二区三区蜜桃| 国产福利在线播放麻豆| 成人综合网视频在线观看| 国产高清在线不卡一区| 一区二区三区欧美高清| 高清欧美大片免费在线观看| 亚洲另类女同一二三区| 最新午夜福利视频偷拍| 久久99青青精品免费| 欧美日韩亚洲巨色人妻| 中文字幕免费观看亚洲视频| 很黄很污在线免费观看| 欧美精品中文字幕亚洲| 99免费人成看国产片| 色婷婷亚洲精品综合网| 91在线爽的少妇嗷嗷叫| 国产av天堂一区二区三区粉嫩| 日本一二三区不卡免费| 亚洲男人的天堂色偷偷| 成人精品一级特黄大片| 一区中文字幕人妻少妇| 亚洲午夜精品视频在线| 99国产一区在线播放| 国产不卡的视频在线观看| 国产精品日韩精品一区| 国产精品午夜福利在线观看 | 国产精品蜜桃久久一区二区| 无套内射美女视频免费在线观看| 午夜精品久久久免费视频| 国产欧美日产久久婷婷| 国产精品一区二区不卡中文 | 亚洲午夜福利不卡片在线| 国产精品久久男人的天堂| 国产精品十八禁亚洲黄污免费观看| 色婷婷中文字幕在线视频|