( 第十六章 之 STL模板之容器的種類)
阿新 • • 發佈:2018-12-10
一、STL容器種類
STL具有容器的概念和容器型別的。其中具有名稱(如容器,序列容器和關聯容器等等)的通用類別容器型別。
C++11之前公有11個型別的容器,分別為:deque、list、priority_queue、stack、vector、map、multimap、set、multiset和bitset
C++11之後新增加了forword_list(單向連結串列容器)、unordered_map(基於雜湊表的map容器)、unordered_set、以及unordered_multimap、unordered_multiset。
二、STL容器特徵以及操作
容器可以儲存一些不同的資料以及他們不同的對應關係(關聯容器).
下面是一些容器的建構函式以及他們的基本操作函式的基本特徵:
其中:X 表示容器型別,如:vector;T表示儲存在容器中的物件型別;a和b表示型別為X的值;r表示型別為X&的值;u表示型別為X的識別符號(即如果X表示vector<int>,則u是一個vector<int>物件)。
複雜度以快到慢依次是:
編譯時間 > 固定時間 > 線性時間
1.C++11新增的容器要求:
2.序列容器
deque、priority_queue、stack、vector、list、forword_list
序列容器的要求:
其中 t
表示型別為T(儲存在容器中的值的型別)的值,n表示整數,p、q、i和j表示迭代器。
這些需要記住,會很常用的