C 迭代器基礎介紹

2021-06-27 10:44:53 字數 831 閱讀 9740

1.迭代器

c++迭代器是一種檢查容器內元素並遍歷元素的資料型別。

標準庫為每一種標準容器(包括vector),定義了一種迭代器型別。迭代器型別提供了比下標操作更加通用的化的用法。

2.容器的iterator型別

每種容器型別都定義了自己的c++迭代器型別,如vector: vector::iterator iter;這句語句定義了乙個名為iter的變數,它的資料型別是vector定義的iterator型別。每個標準庫容器型別都定義了乙個名為iterator的成員,這裡的iterator與跌倒器實際型別的含義相同。

begin和end操作:每種容器都定義了一對名為begin和end的函式,用於返回迭代器。如果容器中有元素的話,由begin返回的迭代器指向第乙個元素:

vector::iterator iter=ivec.begin();

上述語句把iter初始化由名為vector操作返回的值。假設vector不為空,初始化後,iter即指該元素為ivec[0];由end操作返回的c++迭代器指向vector的"末端元素的下乙個"。"超出末端迭代器"。表明它指向了乙個不存在的元素。如果vector為空,begin返回的迭代器與end返回的迭代器相同。

由end操作返回的迭代器並不指向vector中任何實際的元素,相反它只是起乙個哨兵的作用,表示已經處理完vector中所有元素。

3.vector 迭代器的自增和解引用運算

c++迭代器型別定義了一些操作開獲取迭代器多指向的元素,並允許程式設計師將迭代器從乙個元素到另乙個元素。迭代器型別可使用解引用操作符(*)來訪問迭代器所指向的元素:*iter=0

由於end操作返回的迭代器不指向任何元素,因此不能對它進行解引用或自增操作。

c 迭代器介紹

迭代器的簡介 1 迭代器類似於指標型別,它也提供了對物件的間接訪問。2 指標是c語言中就有的東西,迭代器是c 中才有的,指標用起來靈活高效,迭代器功能更豐富些。3 迭代器提供乙個對容器物件或者string物件的訪問的方法,並且定義了容器範圍。使用迭代器 迭代器和指標不一樣,容器和string有迭代器...

c 迭代器介紹

迭代器 iterator 的介紹 背景 指標可以用來遍歷儲存空間連續的資料結構,但是對於儲存空間費連續的,就需要尋找乙個行為類似指標的類,來對非陣列的資料結構進行遍歷。定義 迭代器是一種檢查容器內元素並遍歷元素的資料型別。迭代器提供對乙個容器中的物件的訪問方法,並且定義了容器中物件的範圍。迭代器 i...

基礎 C 迭代器

迭代器是 c 2.0 中的新功能。迭代器是方法 get 訪問器或運算子,它使您能夠在類或結構中支援 foreach 迭代,而不必實現整個 ienumerable 介面。您只需提供乙個迭代器,即可遍歷類中的資料結構。當編譯器檢測到迭代器時,它將自動生成 ienumerable 或 ienumerabl...