在C 中STL的迭代器使用

2021-10-02 04:58:53 字數 1277 閱讀 9858

string s1;

string::iterator it;

指向字串s1第乙個字元的位置:s1.begin();指向字串s1最後乙個字元的位置:s1.rbegin();指向字串s1第乙個字元前一位的位置s1.rend();依次輸出s1中的所有字元:

for

(string::iterator iter = str.

begin()

; iter != str.

end(

); iter++

)

vector<

int> num;

vector<

int>

::iterator iter;

// 定義迭代器

指向第乙個元素:num.begin();正向迭代器:

for

(vector<

int>

::iterator iter = num.

begin()

; iter != num.

end(

); iter++

) cout <<

*iter << endl;

反向迭代器:

for

(vector<

int>

::reverse_iterator riter = num.

rbegin()

; riter != num.

rend()

; riter++

) cout <<

*riter << endl;

1.首位:iter=num.begin();

3. 遍歷並輸出:

for

(mapint>

::iterator iter = num.

begin()

; iter != num.

end(

); iter++

) cout << iter-

>first <<

" "<< iter-

>second << endl;

STL容器使用的時機

vector的使用場景 比如軟體歷史操作記錄的儲存,我們經常要檢視歷史記錄,比如上一次的記錄,上上次的記錄,但卻不會去刪除記錄,因為記錄是事實的描述。deque的使用場景 比如排隊購票系統,對排隊者的儲存可以採用deque,支援頭端的快速移除,尾端的快速新增。如果採用vector,則頭端移除時,會移...

迭代在python中的使用

python可迭代的物件包括 列表 元組 字典 字串,常與for迴圈結合使用。不同於列表有下標,其他可迭代的物件沒有下標仍然可以迭代,像字典這種型別沒有儲存順序,迭代出來的內容可能和初始化值時的順序有所不同。判斷物件是否可迭代,用以下方法 from collections.abc import it...

C 標準庫型別vector,迭代器使用

要想使用vector,必須包含適當的標頭檔案。include using std vector vector是乙個類模板。vector v1 v1是空得裡面裝的是t型別 vector v2 v1 v2包含v1裡面的所有元素的副本 vector v2 v1 等價v2 v1 vector v3 n,va...