c++迭代器的简单使用

//begin end。begin指向首元素;end指向尾元素后边的地址

vector vec1{1,2,3,4,5,6,7,8};

for (auto it = vec1.begin(); it != vec1.end(); ++it)

{

cout << *it << endl;

}

 

//迭代器类型 iterator

vector vec2{ "aaa","bbb","ccc","ddd" };

vector::iterator it;

vector::iterator is;

 

for (is = vec2.begin(); is != vec2.end(); ++is)

{

cout << *is << endl;

}

 

//迭代器运算

//iter + n:迭代器加上一个整数仍是迭代器,只是位置向前移动若干元素

//iter - n:也是迭代器,位置向前移动若干元素

//iter += n:iter = iter + n

//iter1-iter2:两个迭代器相减结果为它们之间的距离。

 

vector::iterator bit = vec1.begin();

vector::iterator eit = vec1.end();

 

cout << eit - bit << endl;//8

cout << *(bit+1) << endl;//2

cout << *(eit -= 1) << endl;//8,

你可能感兴趣的:(c++)