不可变外部迭代器和可变外部迭代器 [blog/iterator/immut-vs-mut]

不可变外部迭代器没有内部可变状态可以迭代多次。

可变外部迭代器只能迭代一次,虽然无法实现uncons, 但是迭代每个元素的过程仍是可分割的。

调用 next 方法后,可变外部迭代器的内部状态改变,变成剩余的迭代了。