Iterator模式(行为型)
2018-09-29 本文已影响0人
潭潭_180
Iterator 模式应该是最为熟悉的模式了,最简单的证明就是我在实现 Composite 模式、Flyweight 模式、 Observer 模式中就直接用到了 STL 提供的 Iterator 来遍历 Vector 或者 List数据结构。
Iterator 模式也正是用来解决对一个聚合对象的遍历问题, 将对聚合的遍历封装到一个类中进行,这样就避免了暴露这个聚合对象的内部表示的可能。
结构图
Iterator 模式中定义的对外接口可以视客户成员的便捷定义,但是基本的接口在图中的Iterator 中已经给出了(参考 STL 的 Iterator 就知道了)