<iterator>
定義 Iterator 基本、預先定義的 Iterator 和資料流 Iterator,以及幾個支援的樣板。 預先定義的 Iterator 包含插入和反向配置器。 取得插入 Iterator 配置器三個類別:前面、背景和一般。 它們提供插入語意 (Semantics) 而不是覆寫語意容器成員函式的 Iterator。
#include <iterator>
備註
Iterator 是指標的概念,擷取從其需求以允許 C++. C/C++ 程式具有不同資料結構使用以一致的方式的方法。 Iterator 為容器和泛型演算法之間的媒介。 而不是在特定資料型別,演算法定義於列舉型別指定的範圍。 滿足 Iterator 的需求的任何資料結構可能會由演算法然後於。 取得 Iterator,每個都有自己的一組需求和產生的功能五個型別或分類:
輸出:移至之前執行,可以儲存,但是不會擷取值,,後者是由 ostream 和 TAB 鍵。
輸入:移至之前執行,可以擷取,但是不會儲存值,,後者是由 istream。
轉送:移至之前執行,可以儲存和擷取值。
雙向:向前和向後捲動,可以儲存和擷取值,,假設依據清單、集合、多重集、對應和 multimap。
隨機存取:任何順序存取的項目,可以儲存和擷取值,,假設以向量、deque、字串和陣列。
Iterator 存取更大的需求和則更強大的項目可能在 Iterator 位置使用較少的需求。 例如,在中,如果轉送 Iterator,然後呼叫以隨機存取 Iterator 中才能使用。
功能
依位置的指定數目遞增 Iterator。 |
|
建立可將項目插入至位於指定之容器的上一頁的 Iterator。 |
|
擷取 Iterator 遞增至指定的容器的第一個項目。 |
|
判斷加入數目兩個 Iterator 定址位置之間的。 |
|
擷取 Iterator 至之後的指定容器的最後一個項目的項目。 |
|
建立可將項目插入至位於指定之容器的最上層的 Iterator。 |
|
將新的項目新增至容器中指定的問題之外掛程式的 Iterator 配置器。 |
|
傳回包含所提供之 Iterator 的移動 Iterator,其儲存的基底 Iterator。 |
|
重複指定次數並傳回新的 Iterator 的位置。 |
|
在背面重複指定次數並傳回新的 Iterator 的位置。 |
運算子
測試,如果左側的 Iterator 物件等於右邊的 Iterator 物件不相等。 |
|
測試,如果左側的 Iterator 物件等於右邊的 Iterator 物件。 |
|
測試,如果左側的 Iterator 物件大於右邊的 Iterator 物件。 |
|
測試,如果左側的 Iterator 物件小於或等於右邊的 Iterator 物件。 |
|
測試,如果左側的 Iterator 物件大於右邊的 Iterator 大於物件。 |
|
測試,如果左側的 Iterator 物件大於或等於右邊的 Iterator 物件。 |
|
將 Iterator 的位移並傳回新的 reverse_iterator 處理項目插入於新的位移位置。 |
|
從減去另一個 Iterator 並傳回其差異。 |
類別
樣板類別描述一個輸出 Iterator 物件。 它會將項目插入容器型別 容器,它透過受保護的 pointer 物件存取它儲存在名為的容器。 |
|
為 iterator_category 函式的傳回型別表示雙向 Iterator 的類別。 |
|
存取陣列使用隨機存取,的類別中,已檢查的 Iterator。 |
|
為 iterator_category 函式的傳回型別表示順向 Iterator 的類別。 |
|
樣板類別描述一個輸出 Iterator 物件。 它會將項目插入容器型別 容器,它透過受保護的 pointer 物件存取它儲存在名為的容器。 |
|
為 iterator_category 函式的傳回型別表示輸入 Iterator 的類別。 |
|
樣板類別描述一個輸出 Iterator 物件。 它會將項目插入容器型別 容器,它透過受保護的 pointer 物件存取它儲存在名為的容器。 它也會儲存受保護的 iterator 物件中, Container::iterator,呼叫 iter。 |
|
樣板類別描述輸入 Iterator 物件。 它會擷取類別 Ty 物件從輸入資料流,它會將物件存取它所儲存,型別指標 basic_istream<Elem, Tr>。 |
|
樣板類別描述輸入 Iterator 物件。 它會插入類別 Elem 的項目至輸出資料流緩衝區,並傳遞物件存取它所儲存,型別 pointer 至 basic_streambuf<Elem, Tr>。 |
|
樣板類別當做基底型別適用於所有的 Iterator。 |
|
提供與不同 Iterator 的關鍵型別的範本 Helper 類別的型別,因此可以相同方式參考。 |
|
move_iterator 物件儲存型別 RandomIterator隨機存取 Iterator。 它的行為就像隨機存取 Iterator,但是有一點例外,就是,當取值別名。 operator* 結果隱含地轉型為。 value_type&&: 進行 rvalue reference。 |
|
樣板類別描述一個輸出 Iterator 物件。 它會插入類別 [型別] 物件至輸出資料流,它會將物件存取它所儲存,型別 pointer 至 basic_ostream<Elem, Tr>。 |
|
樣板類別描述一個輸出 Iterator 物件。 它會插入類別 Elem 的項目至輸出資料流緩衝區,並傳遞物件存取它所儲存,型別指標 basic_streambuf<Elem, Tr>。 |
|
為 iterator_category 函式的傳回型別表示輸出 Iterator 的類別。 |
|
為 iterator_category 函式的傳回型別所表示的隨機存取 Iterator 的類別。 |
|
樣板類別在背面只是描述的行為就像隨機存取 Iterator 的物件,否則為。 |