在c++程式設計中常見到「stl」這個英文縮寫,其實這是c++的標準模板庫(stl = standard template library)的意思,它其實裡面包含了很多存放資料並操作各種資料結構的模板,也叫容器,這些容器可以重複使用,並且整合了大量的優秀演算法,大大簡化了我們程式設計時組織資料結構的步驟,這些容器包括有:list,vector,set,map等。
容器部分主要由標頭檔案,,,,,和組成。對於常用的一些容器和容器介面卡(可以看作由其它容器實現的容器),可以通過下表總結一下它們和相應標頭檔案的對應關係。
資料結構描述實現標頭檔案
向量(vector)
連續儲存的元素
列表(list)
由節點組成的雙向鍊錶,每個結點包含著乙個元素
雙佇列(deque)
連續儲存的指向不同元素的指標所組成的陣列
集合(set)
由節點組成的紅黑樹,每個節點都包含著乙個元素,節點之間以某種作用於元素對的謂詞排列,沒有兩個不同的元素能夠擁有相同的次序
多重集合(multiset)
允許存在兩個次序相等的元素的集合
棧(stack)
後進先出的值的排列
佇列(queue)
先進先出的值的排列
優先佇列(priority_queue)
元素的次序是由作用於所儲存的值對上的某種謂詞決定的的一種佇列
對映(map)
由對組成的集合,以某種作用於鍵對上的謂詞排列
多重對映(multimap)
允許鍵對有相等的次序的對映
初識STL標準庫
簡要介紹 stl可分為容器 containers 迭代器 iterators 空間配置器 allocator 配接器 adapters 演算法 algorithms 仿函式 functors 六個部分。在c 標準中,stl被組織為下面的 17個頭檔案 algorithm deque function...
C 標準模板庫STL
stl是標準c 庫的一部分。stl模板類為c 提供了完善的資料結構和演算法。stl的特點 型別引數化 即stl的 中可處理任意自定義型別的物件。泛型程式設計 generic programming 它以模板為基礎,弱化了 實體型別的差異,簡化了程式設計時問題抽象的模型,提供了更好的 封裝性和彈性。s...
C 標準模板庫STL
stl 標準模板庫 包括容器,演算法,迭代器 容器用來儲存資料,比如vector,list,堆疊等,string也算 一共有八個 演算法就是對容器進行操作,比如增刪改查資料 迭代器用來遍歷容器itreator 用指標的方式來遍歷容器的資料 注 平時使用的時候大部分時候我們都用上了,但是面試的時候不能...