C++ 順序容器小結

C++ Primer 中文第四版中,

第九章  容器和算法:

標準庫定義了順序容器和關聯容器。

順序容器(sequential container):將單一類型元素聚集起來成爲容器,然後根據位置來存儲和訪問這些元素。順序容器的元素排列次序與元素值無關,而是由元素添加到容器裏的次序決定。

標準庫定義了三種順序容器類型:vector、list 和 deque(是雙端隊列“double-ended queue”的簡寫,發音爲“deck”)。它們的差別在於訪問元素的方式,以及添加或刪除元素相關操作的運行代價。標準庫還提供了三種容器適配器(adaptors)。
實際上,適配器是根據原始的容器類型所提供的操作,通過定義新的操作接口,來適應基礎的容器類型。順序容器適配器包括 stack、queue 和 priority_queue 類型,見表 :

順序容器  
vector 支持快速隨機訪問
list 支持快速插入/刪除
deque 雙端隊列
順序容器適配器  
stack 後進先出(LIFO)
queue 先進先出(FIFO)
priority_queue 有優先級管理

常用迭代器運算總結如下表:
常用迭代器運算
*iter 返回迭代器iter所指向的元素的引用
iter->mem 對iter進行解引用,獲取指定元素中名爲mem的成員。等效於(*iter).mem
iter++
++iter
給iter加1,使其指向容器裏的下一個元素
iter--
--iter
給iter減1,使其指向容器裏的前一個元素
iter1 == iter2
iter1 != iter2
比較兩個迭代器是否相等(或不等)。當兩個迭代器指向同一個容器中的同一個元素,或者當他們都指向同一個容器的超出末端的下一位置時,兩個迭代器相等


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章