C++语言之iterator迭代器

迭代器的用途是什么?

答:检查容器内元素并历遍元素的数据类型。


迭代器的解引用操作符是什么?

答:解引用操作符返回迭代器当前所指向的元素。

如:vector<int>::iterator iter;*iter=0;//*iter 和 ivec[0] 就是指向同一个元素。


使用迭代器如何循环历遍?

答:

//第一种

// equivalent loop using iterators to reset all the elemen ts in ivec 
to 0 
     for (vector<int>::iterator iter = ivec.begin(); iter != ivec.end(); ++iter) 
         *iter = 0;  // set element to which iter refers to 0 

//第二种

iter=svec.begin();
while(iter<svec.end())
{
cout<<*iter<<endl;
++iter;
}

vector的begin和end函数的返回值是什么?

答:

begin返回指向第一个元素的迭代器, 
end返回最后一个元素的下一个元素的迭代器。 
是这种类型:vector<T>::iterator

如何定位vector中间元素?

答:vector<int>::iterator mid = vi.begin() + vi.size() / 2;


const_iterator:从迭代器读取元素值而不是对它进行赋值。

发布了54 篇原创文章 · 获赞 5 · 访问量 3万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章