C++標準庫標頭檔案
C++標準庫包含不同型別的庫。以下是所有這些型別及其下的庫的列表。
實用工具庫
<cstdlib> − 通用實用工具,例如程式控制、動態記憶體分配、隨機數、排序和搜尋
<csignal> − 用於訊號管理的函式和宏常量(例如SIGINT等)
<csetjmp> − 儲存(和跳轉)到執行上下文的宏(和函式)
<cstdarg> − 處理可變長度引數列表
<typeinfo> − 執行時型別資訊實用工具
<bitset> − std::bitset 類模板
<functional> − 函式物件、函式呼叫、繫結操作和引用包裝器
<utility> − 各種實用程式元件
<ctime> − C 風格的時間/日期實用工具
<cstddef> − 標準宏和型別定義
<typeindex>(自C++11起) − 圍繞 type_info 物件的包裝器,可用作關聯容器和無序關聯容器中的索引
<type_traits> (自C++11起) − 編譯時型別資訊
<chrono> (自C++11起) − C++ 時間實用工具
<initializer_list> (自C++11起) − 定義輕量級代理物件的庫,該物件提供對 const T 型別物件陣列的訪問。
<tuple> (自C++11起) − 定義固定大小的異構值集合的庫。它是 std::pair 的泛化。
<any> (自C++17起) − any 類描述任何型別的單個值的型別安全容器。
<optional> (自C++17起) − std::optional 類模板管理可選的包含值,即可能存在也可能不存在的值。
<variant> (自C++17起) − std::variant 類模板表示型別安全的聯合。std::variant 的例項在任何給定時間都持有其備選型別之一的值,或者在錯誤情況下 - 沒有值。
<compare> (自C++20起) − 支援三向比較運算子
動態記憶體管理
<new> − 低階記憶體管理實用工具。new 表示式是建立具有動態儲存持續時間的物件或物件陣列的唯一方法,即生命週期不受其建立範圍限制的物件或物件陣列。
<memory> − 更高級別的記憶體管理實用工具
<scoped_allocator> (自C++11起) − std::scoped_allocator_adaptor 類模板是一個分配器,可用於多級容器(向量集列表元組對映等)。
<memory_resource> (自C++17起) − std::pmr::memory_resource 類是對封裝記憶體資源的類的不受限制集合的抽象介面。
數值限制
<climits> − 整型型別的限制
<cfloat> − 浮點型別的限制
<limits> − 查詢算術型別屬性的標準化方法
<cstdint> (自C++11起) − 固定大小的型別和其他型別的限制
<cinttypes> (自C++11起) − 提供從 C 位元組和寬字串到 std::intmax_t 和 std::uintmax_t 的轉換,過載一些 std::intmax_t 的數學函式,併為 <cstdint> 中宣告的型別提供 C 風格的輸入/輸出格式宏。
錯誤處理
<exception> − 異常處理實用工具
<stdexcept> − 標準異常物件
<cassert> − 條件編譯宏,將其引數與零進行比較
<cerrno> − 包含最後一個錯誤號的宏
<system_error> (自C++11起) − std::error_code 是一個平臺相關的錯誤程式碼。每個 std::error_code 物件都儲存一個源自作業系統或某些低階介面的錯誤程式碼,以及一個指向 std::error_category 型別物件的指標,該指標對應於所述介面。
字串庫
<cctype> − 用於確定字元資料中包含型別的函式
<cwctype> − 用於確定寬字元資料中包含型別的函式
<cstring> − 各種窄字元字串處理函式
<cwchar> − 各種寬字元和多位元組字串處理函式
<string> − std::basic_string 類模板
<cuchar> (自C++11起) − C 風格的 Unicode 字元轉換函式
<string_view> (自C++17起) − basic_string_view 類模板描述一個物件,該物件可以引用一個連續的字元型物件的常量序列,序列的第一個元素位於位置零。
容器庫
<array> (自C++11起) − std::array 容器
<vector> − std::vector 容器
<deque> − std::deque 容器
<list> − std::list 容器
<forward_list> (自C++11起) − std::forward_list 容器
<set> − std::set 和 std::multiset 關聯容器
<map> − std::map 和 std::multimap 關聯容器
<unordered_set> (自C++11起) − std::unordered_set 和 std::unordered_multiset 無序關聯容器
<unordered_map> (自C++11起) − std::unordered_map 和 std::unordered_multimap 無序關聯容器
<stack> − std::stack 容器介面卡
<queue> − std::queue 和 std::priority_queue 容器介面卡
演算法庫
<algorithm> − 包含對容器進行操作的演算法
<execution> (C++17) − 演算法並行版本的預定義執行策略
迭代器庫
<iterator> − 容器的迭代器
數值庫
<cmath> − 常用數學函式
<complex> − 複數型別
<valarray> − 用於表示和操作值陣列的類
<random> (自C++11起) − 隨機數生成器和分佈
<numeric> − 對容器中值的數值運算
<ratio> (自C++11起) − 編譯時有理數算術
<cfenv> (自C++11起) − 浮點環境訪問函式
輸入/輸出庫
<iosfwd> − 輸入/輸出庫中所有類的前向宣告
<ios> − std::ios_base 類、std::basic_ios 類模板和幾個型別定義
<istream> − std::basic_istream 類模板和幾個型別定義
<ostream> − std::basic_ostream、std::basic_iostream 類模板和幾個型別定義
<iostream> − 若干標準流物件
<fstream> − std::basic_fstream、std::basic_ifstream、std::basic_ofstream 類模板和幾個型別定義
<sstream> − std::basic_stringstream、std::basic_istringstream、std::basic_ostringstream 類模板和幾個型別定義
<syncstream> (自C++20起) − std::basic_osyncstream、std::basic_syncbuf 和型別定義
<strstream>(已棄用) − std::strstream、std::istrstream、std::ostrstream
<iomanip> − 用於控制輸入和輸出格式的輔助函式
<streambuf> − std::basic_streambuf 類模板
<cstdio> − C 風格的輸入輸出函式
本地化庫
<locale> − 本地化實用工具
<clocale> − C 本地化實用工具
<codecvt> (自C++11起) (在C++17中已棄用) − Unicode 轉換工具
正則表示式庫
<regex> (自C++11起) − 用於支援正則表示式處理的類、演算法和迭代器
原子操作庫
<atomic> (自C++11起) − 原子操作庫
執行緒支援庫
<thread> (自C++11起) − std::thread 類和支援函式
<mutex> (自C++11起) − 互斥原語
<shared_mutex> (自C++14起) − 共享互斥原語
<future> (自C++11起) − 用於非同步計算的原語
<condition_variable> (自C++11起) − 執行緒等待條件
檔案系統庫
<filesystem> (自C++17起) − std::path 類和支援函式
資料結構
網路
關係型資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP