C 容器(STL容器)

2022-08-04 09:21:13 字數 651 閱讀 1413

容器(container)用於存放資料的類模板。可變長陣列、鍊錶、平衡二叉樹等資料結構在stl中都被實現為容器。

在使用容器時,即將容器類模型例項化為容器類,會指明容器中存放的元素是什麼型別。

容器可以分為兩大類:順序容器關聯容器

順序容器有可變長動態陣列vector、雙端佇列deque、雙向鍊錶list

之所以被稱為順序容器,是因為元素在容器中的位置同元素的值無關,即容器是不排序的。

關聯容器有以下四種:set、multiset、map、multimap。關聯容器內的元素是排序的。插入元素時,容器會按一定的排序規則將元素放到適當的位置,因此插入元素時不能指定位置

預設情況下,關聯容器中的元素是從小到大排序(或按關鍵字從小到大排序),而且用《運算子比較元素或關鍵字大小,也正是因為排好序的,關聯容器在查詢時具有很好的效能。

所有的容器都有以下兩個成員函式:

順序容器還有以下常用成員函式:

參考:

C 學習 STL容器

vector 向量 線性容器 用標準模板,記得加上相應的標頭檔案 include include using namespace std int main 設定向量容量 初始化 v1 0 8 v1 1 8 v1 2 8 宣告迭代器 標準他屬於那個模板 vector iterator v1 iter ...

stl容器之順序容器

stl容器分為順序容器和關聯容器 其中順序容器最常用的由vector,list,queue 1.vector vector 向量容器,可以看作變長陣列,長度可根據需要自行變化。使用的標頭檔案 include 定義方式 vector陣列名 vectorar 訪問容器內資料的方式和普通陣列相同,可以用a...

C 實踐 STL容器reserve

我們在使用一些容器型別時,如果事先能大體知道儲存空間的大小,使用成員函式reserve可以有效減少容器重新分配記憶體的次數。下面的 從實際專案改編而來。include include int main 上面程式使用clang g std c 17輸出如下 the size of numbers 0 ...