为什么我们不能添加带有整数的迭代器?

Imtiaz Mehedi

我想通过迭代器打印集合的所有值。打印endl所有值后,我想打印不带最后一个的a。这是我的代码:

for (set<string> :: iterator it = str_set.begin();it!=str_set.end(); it++)
{
     cout<<*it;
     if((it+1)!=str_set.end())  //here I got error ...
     cout<<endl;
}

但是我在检查时遇到if((it+1)!=str_set.end())错误。这是怎么了?

这是错误消息:

error: no match for ‘operator+’ (operand types are ‘std::set<std::__cxx11::basic_string<char> >::iterator’ {aka std::_Rb_tree_const_iterator<std::__cxx11::basic_string<char> >’} and ‘int’)
   92 |         if(it+1!=str_set.end())
      |            ~~^~
      |            |  |
      |            |  int
      |            std::set<std::__cxx11::basic_string<char> >::iterator {aka std::_Rb_tree_const_iterator<std::__cxx11::basic_string<char> >}
萨胡

这是怎么了

std::set::iteratorConstant LegacyBidirectionalIterator+在此类对象和之间没有二进制运算符int

您可以std::next用来获取下一个迭代器。那是习惯性的。

 if ( std::next(it) != str_set.end() )
    cout << endl;

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么我们不能为以下代码调试带有yield return的方法?

来自分类Dev

为什么我们不能为带有两个参数的方法捕获通配符?

来自分类Dev

如果我们可以使用访问器访问私有数据成员,那么为什么我们不能访问私有方法呢?

来自分类Dev

为什么在带有ehcache的春季我们不能将@Cacheable与静态方法一起使用?

来自分类Dev

为什么我们不能将带有其他参数的{}块传递给Ruby中的方法

来自分类Dev

为什么我们不能使用带有数组名称的间接运算符?

来自分类Dev

为什么我们同时需要迭代和迭代器概念?

来自分类Dev

为什么我们不能使用push方法来迭代javascript数组?

来自分类Dev

我们可以在单页网站上添加带有下拉菜单的导航栏吗?

来自分类Dev

为什么我需要将“/”添加到 routerLink 但我们在路由器定义中没有“/”?

来自分类Dev

为什么我们建议使用迭代器而不是列表(低级解释)

来自分类Dev

为什么我们将 ::(范围解析运算符)放在迭代器之前?

来自分类Dev

为什么我们不能向枚举添加静态方法?

来自分类Dev

为什么我们不能迅速在扩展中添加指定的初始化程序?

来自分类Dev

为什么我们不能在操作系统的内核中添加最大的功能?

来自分类Dev

8086-为什么我们不能将立即数据移入段寄存器?

来自分类Dev

为什么我们不能通过编程语言使用幅度比较器?

来自分类Dev

为什么我们不能在方法内部声明私有本地内部类?

来自分类Dev

为什么我们不能在方法内部声明私有本地内部类?

来自分类Dev

我们为什么不能用DataKinds填充类型?

来自分类Dev

为什么我们不能扩展泛型?

来自分类Dev

为什么我们不能调用原型函数?

来自分类Dev

为什么我们不能打电话给setTimeout申请?

来自分类Dev

为什么我们不能只使用[] []而不是int [] []?

来自分类Dev

为什么我们不能立即调用函数声明?

来自分类Dev

为什么我们不能保存100%的网站?

来自分类Dev

为什么我们不能扩展泛型?

来自分类Dev

为什么我们不能只使用[] []而不是int [] []?

来自分类Dev

为什么我们不能(无效)10?

Related 相关文章

  1. 1

    为什么我们不能为以下代码调试带有yield return的方法?

  2. 2

    为什么我们不能为带有两个参数的方法捕获通配符?

  3. 3

    如果我们可以使用访问器访问私有数据成员,那么为什么我们不能访问私有方法呢?

  4. 4

    为什么在带有ehcache的春季我们不能将@Cacheable与静态方法一起使用?

  5. 5

    为什么我们不能将带有其他参数的{}块传递给Ruby中的方法

  6. 6

    为什么我们不能使用带有数组名称的间接运算符?

  7. 7

    为什么我们同时需要迭代和迭代器概念?

  8. 8

    为什么我们不能使用push方法来迭代javascript数组?

  9. 9

    我们可以在单页网站上添加带有下拉菜单的导航栏吗?

  10. 10

    为什么我需要将“/”添加到 routerLink 但我们在路由器定义中没有“/”?

  11. 11

    为什么我们建议使用迭代器而不是列表(低级解释)

  12. 12

    为什么我们将 ::(范围解析运算符)放在迭代器之前?

  13. 13

    为什么我们不能向枚举添加静态方法?

  14. 14

    为什么我们不能迅速在扩展中添加指定的初始化程序?

  15. 15

    为什么我们不能在操作系统的内核中添加最大的功能?

  16. 16

    8086-为什么我们不能将立即数据移入段寄存器?

  17. 17

    为什么我们不能通过编程语言使用幅度比较器?

  18. 18

    为什么我们不能在方法内部声明私有本地内部类?

  19. 19

    为什么我们不能在方法内部声明私有本地内部类?

  20. 20

    我们为什么不能用DataKinds填充类型?

  21. 21

    为什么我们不能扩展泛型?

  22. 22

    为什么我们不能调用原型函数?

  23. 23

    为什么我们不能打电话给setTimeout申请?

  24. 24

    为什么我们不能只使用[] []而不是int [] []?

  25. 25

    为什么我们不能立即调用函数声明?

  26. 26

    为什么我们不能保存100%的网站?

  27. 27

    为什么我们不能扩展泛型?

  28. 28

    为什么我们不能只使用[] []而不是int [] []?

  29. 29

    为什么我们不能(无效)10?

热门标签

归档