搜索

首页  >  问答  >  正文

(C++)为什么需要反向迭代器?

RT。为什么不可以用正向迭代器进行反向遍历?
求各位指点。

PHP中文网PHP中文网2773 天前341

全部回复(2)我来回复

  • 巴扎黑

    巴扎黑2017-04-17 13:55:20

    我觉得衍生正向和反向两种迭代器的

    • 好处是

    从数据结构链的任意起点遍历到任意终点都能够以简洁的方式写出代码,而不用去绕脑子,容易出错。

    • 缺点是

    为了节省程序员的脑力,数据结构可能变的更臃肿一些,空间成本变大,反向迭代器的执行效率也未必高。

    回复
    0
  • 怪我咯

    怪我咯2017-04-17 13:55:20

    说说我的看法:

    auto itr = container.end();
    

    此时*itr你就越界了,end()代表你容器最后一个元素的下一个位置。

    回复
    0
  • 取消回复