【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库
@Author:Runsen
在 C++ 中,我們有兩種類型的庫:
- 靜態庫
- 動態庫
靜態庫
靜態庫是成為引用它的可執行文件的一部分的庫。因此,當我們開發應用程序并引用其中的靜態庫時,靜態庫的內容在應用程序中被替換。
Windows 上的靜態庫通常具有擴展名“.lib”,而 Linux 上的靜態庫擴展名為“.a”。
擁有程序引用靜態庫的一個優點是我們不必將靜態庫與可執行文件一起分發。這是因為靜態庫的內容是應用程序的一部分,不需要單獨給出。
這個特定的優點導致了一個缺點,因為可執行文件可能會變得龐大,并且由于庫是可執行文件的一部分而浪費了太多空間。
靜態庫的另一個缺點是,如果靜態庫發生變化,那么引用它的可執行文件也需要更新。
動態庫
動態庫也稱為“共享庫”。在 Windows 中,動態庫的擴展名為“.dll”(動態鏈接庫)。在 Linux 上,動態庫的擴展名為“.so”(共享對象)。
動態庫是由在運行時加載到應用程序中的例程組成的庫。當應用程序引用動態庫時,該庫不會成為應用程序的一部分,而是作為一個單獨的單元保留。
動態庫的優點是庫的一個副本可以被許多應用程序共享,從而節省空間。還有一個優點是,由于動態庫是一個單獨的單元,當動態庫改變時,應用程序可執行文件不會改變。
動態庫的唯一缺點是它需要一個單獨的程序來加載和引用庫,非常麻煩。
如何安裝和使用 C++ 庫
- 下載庫
為了在我們的應用程序中使用庫,我們首先需要獲取庫。
庫可能是預編譯的——在這種情況下,我們只需要下載操作系統的庫。如果庫沒有預編譯,那么我們需要下載源代碼并在我們的機器上編譯它。
在 Windows 上,C++庫通常具有.zip擴展名,而在 Linux 操作系統上,庫包以“.RPM”的形式分發。
下載庫后的下一步是安裝庫。在 Windows 上安裝就像將庫的內容解壓縮到一個文件夾中即可。在 Linux 上,我們可以調用包管理器來安裝庫。
我們需要設置庫的路徑,以便編譯器知道在哪里查找庫文件。這就是 Windows 上的“include”目錄或 Linux 上的“/usr/include”。
vcpkg
C++有沒有想Python中的pip,或者Java中的maven這樣的管理工具,
微軟提供了vcpkg
vcpkg是用于C++一種命令行包/庫管理器,它簡化了Windows、Linux和macOS上第三方C++庫的安裝和配置。
下面是vcpkg具體文檔
-
https://docs.microsoft.com/zh-cn/cpp/build/vcpkg
-
https://github.com/microsoft/vcpkg/blob/master/README_zh_CN.md
-
https://zhuanlan.zhihu.com/p/153199835
安裝vcpkg
建立C:\dev作為安裝目錄。啟動Win10下的PowerShell終端。
執行如下命令行。成功執行完成后,在c:\dev\vcpkg目錄下面將會編譯生成vcpkg.exe文件。
安裝boost:x64
.\vcpkg install boost:x64-windows關于C++的庫,可以查看官方文檔:https://en.cppreference.com/w/cpp/links/libs
比如機器學習的C++模塊
總結
以上是生活随笔為你收集整理的【小白学习C++ 教程】二十三、如何安装和使用 C++ 标准库的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【小白学习C++ 教程】二十二、C++
- 下一篇: c vs java_c++ vs ja