STL六大元件

2021-08-07 20:18:41 字數 701 閱讀 5222

stl提供六大元件,彼此可以組合套用。

1 容器(containers):各種資料結構。如vector,list,deque,set,map,用來存放資料。容器又可以分為順序容器和關聯容器.

順序容器:vector, list, deque, stack, queue, heap, priority_queue, slist

關聯容器:rb-tree, set, map, multimap, multiset, hashtable

2 演算法(algorithm):各種常用演算法如sort, search, copy,erase。從實現角度講,stl演算法是一種function template。演算法分為質變演算法和非質變演算法。

質變演算法(mutating algorithms):是指運算過程中會更改區間內的元素。

非質變演算法(nonmutating algorithms):是指運算過程中不會更改區間內的元素。

3 迭代器(iterators):扮演容器與演算法之間的膠合劑,是所謂的「泛型指標」。共有五種型別,以及其他衍生變化。

4 仿函式(functors):行為類似函式,可作為演算法的某種策略。

5 配接器(adapters):一種用來修飾容器或仿函式或迭代器藉口的東西。

6 配置器(allocators):負責空間配置與管理。從實現的角度來看,配置器是乙個實現了動態空間配置、空間管理,空間釋放的class template。

STL 六大元件

1.容器 containers 各種資料結構,如vector,list,deque,set,map,用來存放資料。從實現的角度看,stl容器是一種class template。2.演算法 algorithms 各種常用的演算法如sort,search,copy,erase 從實現的角度看,stl演算...

STL六大元件

容器 containers 各種資料結構,如 vector list deque set map 用來存放資料。演算法 algorithms 各種常用演算法,如 sort search copy erase 分配器 allocators 負責空間配置與管理。迭代器 iterators 容器與演算法之...

STL六大元件

1,vector 底層實現使用線性表,2,list 底層就是鍊錶 3,deque 底層是雙向的線性表,也就是雙向介面,意思在頭和尾都可以進行插入和刪除操作。4,map 底層是紅黑樹 5,set 底層是紅黑樹 各種常用的演算法,如sort,search,copy 容器和演算法之間的粘合劑,是所謂的泛型...