RT。为什么不可以用正向迭代器进行反向遍历?求各位指点。
认证高级PHP讲师
我觉得衍生正向和反向两种迭代器的
好处是
从数据结构链的任意起点遍历到任意终点都能够以简洁的方式写出代码,而不用去绕脑子,容易出错。
缺点是
为了节省程序员的脑力,数据结构可能变的更臃肿一些,空间成本变大,反向迭代器的执行效率也未必高。
说说我的看法:
auto itr = container.end();
此时*itr你就越界了,end()代表你容器最后一个元素的下一个位置。
我觉得衍生正向和反向两种迭代器的
好处是
从数据结构链的任意起点遍历到任意终点都能够以简洁的方式写出代码,而不用去绕脑子,容易出错。
缺点是
为了节省程序员的脑力,数据结构可能变的更臃肿一些,空间成本变大,反向迭代器的执行效率也未必高。
说说我的看法:
此时*itr你就越界了,end()代表你容器最后一个元素的下一个位置。