2010-09-07 105 views
2

C++中的哪个概念教你扩展和编写自己的迭代器类?我对编写模板有一些了解。定制STL迭代器类

+1

你是什么意思的“概念”?当你需要遍历一个没有合适的迭代器的容器时,你需要编写迭代器,不管这是因为容器是非标准的,需要充实,还是因为你有一些奇怪的迭代需求,比如透明过滤,或者迭代容器的容器。 – 2010-09-07 06:07:36

+0

你也可以有非容器的迭代器,例如ostream迭代器。通常,您可以为任何逻辑集合定义迭代器,即使该集合不作为C++对象存在。 – MSalters 2010-09-07 07:52:12

回答

2

SGI Standard Template Library (STL) documentation解释了所有的迭代器概念及其关系。

你如何使用这些概念并使用它们来为你自己的容器实现一个迭代器完全取决于它是什么类型的容器以及你想用它来做什么。