现在的面试经常问到vector或queue怎么实现,好烦啊。
由于刚刚看了迭代器设计模式一文,文中讲解了Java Collection Framework的框架,它们都实现了下面这个接口:
所以,可以依靠这个接口实现我们自己的C++的容器类,有时间一定试一试,顺便与STL做一些比较。
具体拿出其中的一个方法,比如iterator()方法来阐述一下如何实现。
首先我们定义一个Iterator接口,然后每个类型的容器都实现了自己的Iterator类。在每个容器实现的Collection中的iterator()方法中,返回各自的Iterator对象。