reverse(逆向)迭代器
reverse迭代器是一種配接器,重新定義遞增遞減運算,使其行為正好倒置,這樣使迭代器以逆向來處理元素。
rbegin:傳回逆向遍歷的第乙個元素,也就是實際上最後乙個元素的位置;
rend:傳回逆向遍歷時最後乙個元素的下乙個位置,也就是實際上第乙個元素的前乙個位置;
**示例:
#include#include#include#includeusing namespace std;
void print(int elem)
list::iterator pos1=coll.begin();
list::iterator pos2=coll.end();
for_each(coll.begin(),coll.end(),print);
cout<::reverse_iterator rpos1(pos1);//將乙個迭代器轉換為逆向迭代器,原來那個迭代器必須具有雙向移動能力
list::reverse_iterator rpos2(pos2);
for_each(rpos2,rpos1,print);
cout<
1 2 3 4 5 6 7 8 9
9 8 7 6 5 4 3 2 1
9 8 7 6 5 4 3 2 1
C 標準庫 迭代器
迭代器是乙個 可遍歷stl容器內全部或部分元素 的物件。乙個迭代器用來指出容器中的乙個特定位置。operator 返回當前位置上的元素值 operator 和operator 判斷兩個迭代器是否指向同意位置 operator 為迭代器賦值。因為每個容器選擇的資料結構不同,所以每一種容器都必須提供自己...
C 標準庫之迭代器
迭代器是對指標進行進一步抽象的產物。迭代器是遍歷所有容器 序列 流的統一介面,是標準庫泛形演算法的基礎。迭代器根據其能力分為五種 category properties valid expressions all categories copy constructible copy assignab...
關於C 標準庫泛型演算法reverse的學習筆記
c primer中這樣描述reverse反向排列元素 乙個容器為9,8,7,6,5,4,3,2,1,0,sort後為0,1,2,3,4,5,6,7,8,9。乙個容器為0,1,2,3,4,5,6,7,8,9,sort後還為0,1,2,3,4,5,6,7,8,9。假設乙個容器為0,1,2,3,4,5,6...