转到基于范围的for循环中的下一个迭代器

尼古拉

对于我的项目,我需要使循环中的迭代器转到容器中的下一个项目,进行一些操作,然后再次返回相同的迭代器,然后继续进行,但是由于某种原因,无论是advance不是next,然后使用prev似乎工作。那么,如何获得下一个迭代器并返回上一个迭代器呢?

我收到以下错误消息:

no matching function for call to 'next(int&)'
no type named 'difference_type' in 'struct std::iterator_traits<int>'

谢谢!

template<class T>
void insert_differences(T& container)
{

    for(auto it : container){
        // do some operations here
        //advance(it,1);
        it = next(it); 
        // do some operations here 
        //advance(it, -1);
        it = prev(it);
        }

}
songyuanyao

基于范围的for循环迭代元素。这里的名字it很混乱;这不是迭代器,而是元素,这就是为什么std::next并且std::prev不使用它。

在范围内执行for循环。

用作与传统for循环等效的可读性更高的for循环,可在一定范围的值上运行,例如容器中的所有元素。

您必须自己使用迭代器编写循环,例如

for(auto it = std::begin(container); it != std::end(container); it++){
    // do some operations here
    //advance(it,1);
    it = next(it); 
    // do some operations here 
    //advance(it, -1);
    it = prev(it);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在JavaScript forEach循环中转到“下一个”迭代

在Java中的For循环中转到下一个迭代

如何检查for循环中的下一个迭代?

每个循环中的下一个迭代

我如何转到RPGLE中的循环中的下一个元素?

如果条件为false,则转到For-Each循环中的下一个对象

你可以在一个 for 循环中上下一个范围吗?

R for循环跳转到下一个迭代

for ... of 语句:转到可迭代的下一个元素

如果满足条件,则移至嵌套for循环中的下一个迭代

如何忽略-inf并移至for循环中的下一个迭代

Python:继续外循环中的下一个迭代

如何使用R中的下一个函数跳过for循环中的迭代

是否可以窥视范围循环中的下一个元素?

从工作表1复制一个范围,然后粘贴到循环中下一个工作表的下一个空行

在下一个循环中串联

不转换到 for 循环中的下一个

不要进入for循环的下一个迭代

PHP Splice进入循环的下一个迭代

Kotlin跳过for循环内的下一个迭代

如何在XSLT for-each循环中获取下一个要迭代的节点?

使用下一个方法时,链表无法正确地在while循环中进行迭代

PHP 代码不会迭代到 while 循环中的下一个数据变量(使用引导程序)

列出元素的下一个迭代器

Tensorflow 迭代器下一个值

将结果从一个“ for”循环迭代传递到下一个迭代?

TestNG:经过dataProvider的一次迭代后转到下一个测试

仅在单击某些内容时转到下一个迭代

如何从给定/构造时的内部跳转到下一个迭代?