標準庫中迭代器的關係

2022-01-28 23:59:48 字數 1012 閱讀 5737

分類:

輸入迭代器(input iterator) < 前向迭代器(forward iterator)< 雙向迭代器(bidirectional iterator)< 跳轉迭代器(random access iterator)和 輸出迭代器(output iterator)

繼承關係如下

輸入迭代器與前向迭代器的區別在於,前向迭代器可以保證若例項a與b滿足a==b,則必++a==++b,而輸入迭代器不能保證。

輸入迭代器只能遍歷一遍,但是前向迭代器可以儲存迭代器的多個副本實現多次遍歷。

雙向迭代器故名思意,可以前後移動++,--

跳轉迭代器可以向前向後移動任意位置,+=n,-=n

輸出迭代器也只能遍歷一遍,移至下乙個位置後,不能保證之前的迭代器有效。

C 標準庫 迭代器

迭代器是乙個 可遍歷stl容器內全部或部分元素 的物件。乙個迭代器用來指出容器中的乙個特定位置。operator 返回當前位置上的元素值 operator 和operator 判斷兩個迭代器是否指向同意位置 operator 為迭代器賦值。因為每個容器選擇的資料結構不同,所以每一種容器都必須提供自己...

C 標準庫之迭代器

迭代器是對指標進行進一步抽象的產物。迭代器是遍歷所有容器 序列 流的統一介面,是標準庫泛形演算法的基礎。迭代器根據其能力分為五種 category properties valid expressions all categories copy constructible copy assignab...

C 標準庫 Reverse(逆向)迭代器

reverse 逆向 迭代器 reverse迭代器是一種配接器,重新定義遞增遞減運算,使其行為正好倒置,這樣使迭代器以逆向來處理元素。rbegin 傳回逆向遍歷的第乙個元素,也就是實際上最後乙個元素的位置 rend 傳回逆向遍歷時最後乙個元素的下乙個位置,也就是實際上第乙個元素的前乙個位置 示例 i...