Skip to content

迭代器的有关使用

迭代器的使用更多的还是在 stl 的容器中,原先使用的比较少,现在尝试更多的对迭代器进行使用。

迭代器的种类

原先我使用的一般都是正向迭代器,根据现在的了解,迭代器的种类还有其他的几种,比如反向迭代器只读迭代器这几种,以后会尝试使用这些迭代器。

迭代器失效的场景

迭代器失效的场景就是使用迭代器会出现未知情况的场景,迭代器失效的场景一般出现在在迭代的时候对容器进行了更改等等,比如在迭代容器的过程中向容器中插入了元素或者在迭代的过程中从容器中删除了元素。

上述的这两个情况会导致迭代器的失效,如果在一个 for 循环中导致了迭代器的失效要注意重新获得迭代器,应当通过 iter = vec.insert() 或者 iter = vec.earse() 等方式重新获取容器后的迭代器,进而保证迭代的正确进行。