啃煤球的小西瓜 2017-08-05 03:22 采纳率: 55.6%
浏览 6820
已采纳

我想输出迭代器所指向的map.end()这个元素怎么输出?

图片说明
怎么输出it所指向的元素?

  • 写回答

4条回答 默认 最新

  • 战在春秋 2017-08-05 06:21
    关注

    map.end指向的元素是容器中最后一个元素之后的元素,是一个 理论上的元素 ,实际并不存在。
    因此指向它的迭代器不能够被解引用(Dereferenced)。

    引入map.end的目的是为了操作方便,比如通常和map.begin配合,确定容器的范围:

     for (std::map<string,int>::iterator it=mymap.begin(); it!=mymap.end(); ++it){
          //其它代码
    }
    

    如果试图用解引用的方式输出map.end的值,其结果是不确定的,换句话说,是没有意义的。
    看一下图就更清楚了:
    图片说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办