菜鸟笔记
提升您的技术认知

c vector的迭代器倒序遍历代码实现-ag真人游戏

c vector的迭代器倒序遍历代码实现

第一个元素是从end-1开始的,end指向的不是最后一个元素

for(std::vector::iterator it=myvec.end()-1;it>=myvec.begin();it--)
{
    //处理逻辑自己定义,我这里自己直接输出了
       cout<<*it<

使用反向迭代器逆序遍历vector代码

for(std::set::reverse_iterator it2=myvec.rbegin();it2 != myvec.rend();  it2)
{
    cout<<*it2<

用下面的方法遍历是错误的,会引起死循环

size_t ncount = vvalue.size();
for (size_t i = ncount - 1; i >= 0; --i) {
 int n = 0;
}

这是因为size_t是无符号整数,它是值永远是大于等于0的,所以 i >= 0永远为真,导致循环无法结束。

网站地图