实现类似自定义STL的数据结构

Mic*_*val 4 c++ stl conventions data-structures

我已经实现并测试了数据结构,现在想让它与STL算法集合兼容.实现自定义迭代器等的指南.特别:

  • 必须支持的最小操作集是什么?(例如++,+=,==,!=?)
  • 算法是否期望这些操作的任何属性?

理想情况下,这些答案将成为实现STL兼容数据结构的更大参考的一部分,但我不确定这样的文档是否存在.

Jam*_*lis 5

您应该参考SGI STL文档.它具有每个STL组件的详细要求,包括容器迭代器.

实际上,对于迭代器,有各种类型 - 输入迭代器,输出迭代器,前向迭代器,双向迭代器和随机访问迭代器.每种算法的规范指出了所需的迭代器类型.