C++ Primer 5th笔记(9)chapter9 顺序容器
生活随笔
收集整理的這篇文章主要介紹了
C++ Primer 5th笔记(9)chapter9 顺序容器
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 定義:元素按位置進行存儲和訪問。元素的排列次序與元素值無關,而是由元素添加到容器的次序決定的。
| string | 可變大小數組 | 支持快速隨機訪問 | 在尾部之外的位置插入或刪除元素可能很慢 |
| deque | 雙端隊列 | 支持快速隨機訪問 | 在頭尾位置插入/刪除速度很快 |
| list | 雙向鏈表 | 雙向順序訪問 | 任何位置進行插入/刪除操作速度都很快 |
| forward_list | 單向鏈表 | 支持單向順序訪問 | 在鏈表任何位置進行插入/刪除操作速度都很快 |
| array | 固定數組大小 | 支持快速隨機訪問 | 不能添加或刪除元素 |
在一些特殊的情況下,比如如果既需要隨機訪問,又需要中間插入,那么可以考慮使用兩個容器,最后合并容器元素。
2. 容器庫
| size_type | 無符號整型,足以存儲此容器類型的最大可能容器長度 |
| iterator | 此容器類型的迭代器類型 |
| const_iterator | 元素的只讀迭代器類型 |
| reverse_iterator | 按逆序尋址元素的迭代器 |
| const_reverse_iterator | 元素的只讀(不能寫)逆序迭代器 |
| difference_type | 足夠存儲兩個迭代器差值的有符號整型,可為負數 |
| value_type | 元素類型 |
| reference | 元素的左值類型,是value_type &的同義詞 |
| const_reference | 元素的常量左值類型,等效于 const value_type & |
2.1 迭代器支持的操作
2.2 begin和end操作
c.begin() 返回一個迭代器,它指向容器c的第一個元素
c.end() 返回一個迭代器,它指向容器c的最后一個元素的下一個位置
c.rbegin() 返回一個逆序迭代器,它指向容器c的最后一個元素
c.rend() 返回一個逆序迭代器,它指向容器c的第一個元素前面的位置
2.3 特性操作:關系運算符
- 通過“<運算符”實現.
- 首先需要元素支持。如果元素是一個類,元素要重載<運算符
判斷方法:
- 容器相同大小,且所有元素都相同
- 否則看誰第一個大
總結
以上是生活随笔為你收集整理的C++ Primer 5th笔记(9)chapter9 顺序容器的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++ Primer 5th笔记(8)c
- 下一篇: s3c2440移植MQTT