STL 標頭檔案一覽表

2021-08-25 19:20:15 字數 2601 閱讀 1470

c++標準庫的內容分為10類:c1.語言支援 c2.輸入/輸出 c3.診斷 c4.一般工具 c5.字串 c6.容器 c7.迭代器支援 c8.演算法 c9.數值操作 c10.本地化

>>> c1 與語言支援相關

定義巨集null和offsetof,以及其他標準型別size_t和ptrdiff_t。與對應的標準c標頭檔案的區別是,null是c++空指標常量的補充定義,巨集offsetof接受結構或者聯合型別引數,只要他們沒有成員指標型別的非靜態成員即可。

提供與基本資料型別相關的定義。例如,對於每個數值資料型別,它定義了可以表示出來的最大值和最小值以及二進位制數字的位數。

提供與基本整數資料型別相關的c樣式定義。這些資訊的c++樣式定義在 中

提供與基本浮點型資料型別相關的c樣式定義。這些資訊的c++樣式定義在 中

提供支援程式啟動和終止的巨集和函式。這個標頭檔案還宣告了許多其他雜項函式,例如搜尋和排序函式,從字串轉換為數值等函式。它與對應的標準c標頭檔案 stdlib.h不同,定義了abort(void)。abort()函式還有額外的功能,它不為靜態或自動物件呼叫析構函式,也不呼叫傳給 atexit()函式的函式。它還定義了exit()函式的額外功能,可以釋放靜態物件,以註冊的逆序呼叫用atexit()註冊的函式。清除並關閉所有開啟的c流,把控制權返回給主機環境。

支援動態記憶體分配

支援變數在執行期間的型別標識

支援異常處理,這是處理程式中可能發生的錯誤的一種方式

支援接受數量可變的引數的函式。即在呼叫函式時,可以給函式傳送數量不等的資料項。它定義了巨集va_arg、va_end、va_start以及va_list型別

為c樣式的非本地跳躍提供函式。這些函式在c++中不常用

為中斷處理提供c樣式支援

>>> c2 流i/o

支援標準流cin、cout、cerr和clog的輸入和輸出,它還支援多位元組字元標準流wcin、wcout、wcerr和wclog。

提供操縱程式,允許改變流的狀態,從而改變輸出的格式。

定義iostream的基類

為管理輸出流快取區的輸入定義模板類

為管理輸出流快取區的輸出定義模板類

支援字串的流輸入輸出

支援檔案的流輸入輸出

為輸入輸出物件提供向前的宣告

支援流輸入和輸出的快取

為標準流提供c樣式的輸入和輸出

支援多位元組字元的c樣式輸入輸出

>>> c3 與診斷功能相關

定義標準異常。異常是處理錯誤的方式

定義斷言巨集,用於檢查執行期間的情形

支援c樣式的錯誤資訊

>>> c4 定義工具函式的標頭檔案

定義過載的關係運算子,簡化關係運算子的寫入,它還定義了pair型別,該型別是一種模板型別,可以儲存一對值。這些功能在庫的其他地方使用

定義了許多函式物件型別和支援函式物件的功能,函式物件是支援operator()()函式呼叫運算子的任意物件

給容器、管理記憶體的函式和auto_ptr模板類定義標準記憶體分配器

支援系統時鐘函式

>>> c5 字串處理

為字串型別提供支援和定義,包括單位元組字串(由char組成)的string和多位元組字串(由wchar_t組成)

單位元組字元類別

多位元組字元類別

為處理非空位元組序列和記憶體塊提供函式。這不同於對應的標準c庫標頭檔案,幾個c樣式字串的一般c庫函式被返回值為const和非const的函式對替代了

為處理、執行i/o和轉換多位元組字串行提供函式,這不同於對應的標準c庫標頭檔案,幾個多位元組c樣式字串操作的一般c庫函式被返回值為const和非const的函式對替代了。

為把單位元組字串轉換為數值、在多位元組字元和多位元組字串之間轉換提供函式

>>> c6 容器類

定義vector序列模板,這是乙個大小可以重新設定的陣列型別,比普通陣列更安全、更靈活

定義list序列模板,這是乙個序列的鍊錶,常常在任意位置插入和刪除元素

定義deque序列模板,支援在開始和結尾的高效插入和刪除操作

為佇列(先進先出)資料結構定義序列介面卡queue和priority_queue

為堆疊(後進先出)資料結構定義序列介面卡stack

map是乙個關聯容器型別,允許根據鍵值是唯一的,且按照公升序儲存。multimap類似於map,但鍵不是唯一的。

set是乙個關聯容器型別,用於以公升序方式儲存唯一值。multiset類似於set,但是值不必是唯一的。

為固定長度的位序列定義bitset模板,它可以看作固定長度的緊湊型bool陣列

>>> c7 迭代器

給迭代器提供定義和支援

>>> c8 演算法

提供一組基於演算法的函式,包括置換、排序、合併和搜尋

宣告c標準庫函式bsearch()和qsort(),進行搜尋和排序

允許在**中使用and代替&&

>>> c9 數值操作

支援複雜數值的定義和操作

支援數值向量的操作

在數值串行上定義一組一般數學操作,例如accumulate和inner_product

這是c數學庫,其中還附加了過載函式,以支援c++約定

提供的函式可以提取整數的絕對值,對整數進行取餘數操作

>>> c10 本地化

提供的本地化包括字元類別、排序序列以及貨幣和日期表示。

對本地化提供c樣式支援

C C 標頭檔案一覽表

名稱 c c 設定插入點,驗證程式斷言 字元型別 錯誤碼浮點環境 浮點數型別 整型格式轉換 替代關係操作符巨集 實現常量 區域性類別 數字常量 非區域性goto 訊號可變參數列 布林型別和值 標準定義 整形 標準i o庫 標準函式庫 字串操作 通用型別數學巨集 時間和日期 寬字元支援 寬字元分類和對...

C 標頭檔案一覽表

c 傳統 c include 設定插入點 include 字元處理 include 定義錯誤碼 include 浮點數處理 include 檔案輸入 輸出 include 引數化輸入 輸出 include 資料流輸入 輸出 include 定義各種資料型別最值常量 include 定義本地化函式 i...

CLI 語言一覽表

cli 語言是指用於建立符合 公共語言體系 common language infrastructure 的庫和程式的計算機語言。除了一些明顯的例外,絕大多數 cli 語言全部編譯成為 公共中間語言 cil,common intermediate language 而 cil 做為一種中間語言,可被...