stl 標準模板庫 包括容器,演算法,迭代器
容器用來儲存資料,比如vector,list,堆疊等,string也算;一共有八個
演算法就是對容器進行操作,比如增刪改查資料
迭代器用來遍歷容器itreator 用指標的方式來遍歷容器的資料
注:平時使用的時候大部分時候我們都用上了,但是面試的時候不能單說容器,一來不夠具體,而來顯得外行;
注:不同的容器的操作方式不同,需要記憶體管理高的**,使用容器時需要考慮該容器的操作方式,和適用場景(優缺點)。
基本原則如下:
1、如果需要高效的隨機訪問,不在乎插入和刪除的效率,使用vector;
2、如果需要大量的插入和刪除元素,不關心隨機訪問的效率,使用list;
3、如果需要隨機訪問,並且關心兩端資料的插入和刪除效率,使用deque;
4、如果打算儲存資料字典,並且要求方便地根據key找到value,一對一的情況使用map,一對多的情況使用multimap;
5、如果打算查詢乙個元素是否存在於某集合中,唯一存在的情況使用set,不唯一存在的情況使用multiset
C 標準模板庫STL
stl是標準c 庫的一部分。stl模板類為c 提供了完善的資料結構和演算法。stl的特點 型別引數化 即stl的 中可處理任意自定義型別的物件。泛型程式設計 generic programming 它以模板為基礎,弱化了 實體型別的差異,簡化了程式設計時問題抽象的模型,提供了更好的 封裝性和彈性。s...
c (標準模板庫STL)
stl是一種泛型程式設計 generic programming 容器主要有以下分類 例如 容器的成員函式begin 返回指向容器中第乙個元素的迭代器 end 返回指向容器中最後乙個元素後繼位置的迭代器。下面通過stl中提供的乙個泛型函式find 來說明迭代器與泛型演算法的關係 首先看下stl對於f...
C 標準模板庫(STL)
c 原先的標準模板庫容器包括 deque,list,queue,priority queuem stack,vector,map,multimap,set,multiset,bitset c 11將bitset從容器分類移去了單獨分類,並且新增了 unordered map,unordered mu...