常用的C++標(biāo)準(zhǔn)庫(kù)頭文件小結(jié)
C字母開(kāi)頭的是C語(yǔ)言庫(kù)包裝器, 并添加到 std 命名空間,例如cmath cstdlib。
模板容器
- 順序容器
<vector>: 支持動(dòng)態(tài)擴(kuò)容的數(shù)組,支持隨機(jī)訪問(wèn)和尾插, 比普通數(shù)組更安全、更靈活
<array>: 固定大小數(shù)組,支持復(fù)制
<deque>: 雙向隊(duì)列, 支持在開(kāi)始和結(jié)尾的高效插入和刪除操作
<list>: 雙向鏈表 在任意位置插入和刪除元素
<forward_list>: 單向鏈表
- 有序的關(guān)聯(lián)容器
<map>: 鍵值對(duì)數(shù)組, 且按照升序存儲(chǔ)。multimap類似于map,但鍵不是唯一的
<set>: 集合,以升序方式存儲(chǔ)唯一值, 已插入過(guò)的元素不可重復(fù)插入, multiset類似于set,但是值不必是唯一的。
<bitset>: 為固定長(zhǎng)度的位序列定義bitset模板,它可以看作固定長(zhǎng)度的緊湊型bool數(shù)組
- 無(wú)序的關(guān)聯(lián)容器
<unordered_map>: 無(wú)序容器map,其鍵值隨機(jī)存放。multimap類似于map,但鍵不是唯一的
<unordered_set>: 無(wú)序容器set,其元素隨機(jī)存放。multiset類似于set,但是值不必是唯一的
- 容器適配器
<queue>: 隊(duì)列, 先進(jìn)先出(FIFO),只有隊(duì)頭和隊(duì)尾可以被訪問(wèn),故不可有遍歷行為
<stack>: 堆棧(后進(jìn)先出)
- 迭代器
<iterator>: 迭代器
異常和錯(cuò)誤處理
<cassert>: assert()宏
<exception>: 支持異常處理,exception、bad_excption
<stdexcept>: 沒(méi)有定義在 exception 中的非領(lǐng)域相關(guān)的異常
<system_error>: 錯(cuò)誤分類和錯(cuò)誤代碼
<cerrno>: 獲取C函數(shù)錯(cuò)誤信息(錯(cuò)誤編號(hào))
通用工具
<any>: 表示任意類型
<optional>: 可選,值可以有,也可以為空
<tuple>: 元組
<type_traits>: 模版元編程中使用的類型trait
<typeinfo>: 運(yùn)行時(shí)類型信息工具 支持變量在運(yùn)行期間的類型標(biāo)識(shí)
<typeindex>: type_info簡(jiǎn)單包裝,在容器中作為索引類型
<utility>: 多種工具組件
<algorithm>: 提供一組基于算法的函數(shù),包括置換、排序、合并和搜索
<locale> 本地化包括字符類別以及貨幣和日期表示
<clocale> C語(yǔ)言本地化
<cstdlib>: rand(), abort(),exit(),calloc() malloc() realloc() free() qsort()以及字符處理函數(shù)
<cstdarg>: va_arg、va_end、va_start以及va_list類型
<cstddef>: NULL、size_t和ptrdiff_t
I/O流
<cstdio>: fopen fclose, printf printf scanf 等C語(yǔ)言輸入輸出操作
<filesystem>: 文件系統(tǒng) path、directory_entry
<fstream>: 文件流
<iostream>: 支持標(biāo)準(zhǔn)流cin、cout、cerr和clog的輸入和輸出,還支持多字節(jié)字符標(biāo)準(zhǔn)流wcin、wcout、wcerr和wclog
<iomanip>: 提供操縱程序,允許改變流的狀態(tài),從而改變輸出的格式
<ios>: 定義iostream的基類
<istream>: 為管理輸出流緩存區(qū)的輸入定義模板類
<ostream>: 為管理輸出流緩存區(qū)的輸出定義模板類
<sstream>: 支持字符串的流輸入輸出
<fstream>: 支持文件的流輸入輸出
<iosfwd>: 為輸入輸出對(duì)象提供向前的聲明
<streambuf>: 支持流輸入和輸出的緩存
<cwchar>: 支持多字節(jié)字符的C樣式輸入輸出
數(shù)學(xué)和數(shù)字
<cfenv> <cfloat>: C語(yǔ)言浮點(diǎn)數(shù)和相關(guān)操作
<cmath>: C數(shù)學(xué)庫(kù)
<limits>、提供與基本數(shù)據(jù)類型相關(guān)的定義。例如,對(duì)于每個(gè)數(shù)值數(shù)據(jù)類型,它定義了可以表示出來(lái)的最大值和最小值以及二進(jìn)制數(shù)字的位數(shù)。
<cstdint>: int8_他int64_t等整數(shù)類型
<climits>: C風(fēng)格數(shù)字限制,例如INT_MAX
<numeric> 數(shù)值算法的原型, 例如accumulate和inner_product
<random>: 隨機(jī)數(shù)生成
<ratio>: 有理數(shù)
<valarray>: 支持?jǐn)?shù)值矢量的操作
內(nèi)存管理
<memory>: 分別支持共享shared_ptr,獨(dú)享unique_ptr的動(dòng)態(tài)內(nèi)存分配)
<memory_resource>: 多態(tài)分配器和內(nèi)存資源
<new>:支持動(dòng)態(tài)內(nèi)存分配 new、delete
<allocators>: 封裝堆內(nèi)存管理的對(duì)象
<scoped_allocator>: 容器的分配器
多線程處理
<csignal>: signal() raise() 信號(hào)處理
<atomic>: 原子類型atomic<T>和原子操作
<condition_variable>: 條件變量, 利用線程間共享的全局變量進(jìn)行同步的一種機(jī)制
<future>: future promise async() 提供異步操作結(jié)果的機(jī)制,輕松解決從異步任務(wù)中返回結(jié)果
<mutex>: 互斥鎖
<shared_mutex>: 共享鎖
<thread>: 線程對(duì)象
<coroutine>: 協(xié)程支持庫(kù)
字符和字符串
<string>: 為字符串類型提供支持和定義,包括單字節(jié)字符串(由char組成)的string和多字節(jié)字符串(由wchar_t組成)
<string_view>: const string& 不會(huì)拷貝字符串
<charconv>: 字符轉(zhuǎn)換, from_chats()、to_chars()
<cuchar>: Unicode 字符
<cwchar>: 寬字符版本的字符串、內(nèi)存和IO函數(shù)
<cctype> 單字節(jié)字符操作
<cwctype> cctype的寬字符版本
<cstring> 內(nèi)存: memcpy() memset() 字符: strcpy() strcmp()
<regex>: 正則表達(dá)式
時(shí)間
<chrono>: C++ 時(shí)間工具
<ctime>: C時(shí)間工具 time()、localtime()
以上就是常用的C++標(biāo)準(zhǔn)庫(kù)頭文件小結(jié)的詳細(xì)內(nèi)容,更多關(guān)于C++標(biāo)準(zhǔn)庫(kù)頭文件的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
一文帶你快速了解C/C++標(biāo)準(zhǔn)庫(kù)中的ptrdiff_t
ptrdiff_t是C/C++標(biāo)準(zhǔn)庫(kù)中定義的一個(gè)與機(jī)器相關(guān)的數(shù)據(jù)類型,ptrdiff_t類型變量通常用來(lái)保存兩個(gè)指針減法操作的結(jié)果,下面這篇文章主要給大家介紹了關(guān)于C/C++標(biāo)準(zhǔn)庫(kù)中ptrdiff_t的相關(guān)資料,需要的朋友可以參考下2022-11-11C++使用標(biāo)準(zhǔn)庫(kù)實(shí)現(xiàn)事件和委托以及信號(hào)和槽機(jī)制
這篇文章主要為大家詳細(xì)介紹了C++如何使用標(biāo)準(zhǔn)庫(kù)實(shí)現(xiàn)事件和委托以及信號(hào)和槽機(jī)制,文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,需要的可以參考一下2022-11-11C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單的<三子棋>案例
這篇文章主要介紹了C語(yǔ)言實(shí)現(xiàn)簡(jiǎn)單的《三子棋》,本文通過(guò)功能區(qū)分一步步實(shí)現(xiàn)該案例,通過(guò)逐步的解析和代碼列舉,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07基于C++中常見(jiàn)編譯錯(cuò)誤的總結(jié)詳解
本篇文章是對(duì)C++中的常見(jiàn)編譯錯(cuò)誤進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-05-05C 語(yǔ)言restrict 關(guān)鍵字的使用淺談
C 語(yǔ)言restrict 關(guān)鍵字的使用淺談,需要的朋友可以參考一下2013-04-04