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

我想输出迭代器所指向的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条)

报告相同问题?

悬赏问题

  • ¥20 qt中connect两个signal
  • ¥20 pix2pixHD运行测试命令时出现数据类型错误无法反向传播的问题
  • ¥15 python处理Excel符合条件的行自动填写数据分类
  • ¥15 汇编hook举例并讲解(通俗易懂,学习用)
  • ¥20 用c++语言模拟键盘电子琴设计
  • ¥15 STM32cubemx生成keil工程,有问题与正常的情况不同,求解!
  • ¥15 如何自动点击银行app的安全键盘,实现密码自动输入
  • ¥15 关于四边形重叠的问题
  • ¥15 用verilog语言设计一个简易的八音符电子琴,可通过按键输入来控制音响。演奏时可以选择是手演奏(由键盘输入)或自动演奏已存入的乐曲。能够自动演奏多首乐曲,且每首乐曲可重复演奏
  • ¥15 sap gui脚本每次到导出Excel的时候就停住不动。不会另存为。