我非常熟悉STL及其使用方法。我的问题是......
如果我要实现自己的STL容器类型,内部迭代器如何定义?STL类倾向于具有顺序或随机访问迭代器,这些迭代器的const_版本以及流迭代器。
这些迭代器是否在每个STL类中都完全定义,还是有一些基类可以继承以获得大多数迭代器功能?是否有人知道一个好的参考资料来实现支持这些不同类型迭代器的类?
如果我要实现自己的STL容器类型,内部迭代器如何定义?STL类倾向于具有顺序或随机访问迭代器,这些迭代器的const_版本以及流迭代器。
这些迭代器是否在每个STL类中都完全定义,还是有一些基类可以继承以获得大多数迭代器功能?是否有人知道一个好的参考资料来实现支持这些不同类型迭代器的类?
const_back_inserter
。 - pmrcontainer::const_iterator
不同于const container::iterator
,因此它不仅仅是一个 typedef,但如果您从头开始编写数据结构,通常可以编写一个模板,将T
作为模板参数用于container::iterator
,并使用const T
用于container::const_iterator
。 - Steve Jessop