順序容器:按順序存儲數據,具有插入速度快但是查找操作相對較慢的特點。
- std::vector 動態數組
- std::deque 允許頭部操作的vector
- std::list 操作與雙向鏈表一樣
- std::forward_list 單向鏈表,只能沿一個方向遍歷
關聯容器:按指定的順序存儲數據,就像字典一樣。這將降低插入數據的速度,但在查詢方面有很大的優勢。
- std::set
- std::unordered_set
- std::map
- std::unordered_map
- std::multiset
- std::unordered_multiset
- std::multimap
- std::unordered_multimap
容器適配器:是順序容器和關聯容器的變種,其功能有限,用於滿足特定的需求。
- std::stack 棧,FILO
- std::queue 隊列,FIFO
- std::priority_queue 以特定順序存儲元素,因爲優先級最高的元素總是位於隊列開頭
STL迭代器:迭代器是一座橋樑,讓這些模板函數能夠以一致而無縫的方式處理容器,而容器是模板類。
- 輸入迭代器
- 輸出迭代器
- 前向迭代器
- 雙向迭代器
- 隨機訪問迭代器
STL算法:提供了查找、排序、反轉等標準的常見的編程工具【include<algorithm>】
- std::find
- std::find_if
- std::reverse
- std::remove_if
- std::transform