使用boost :: iterator_facade有什么优缺点?

时间:2010-04-07 05:11:16

标签: c++ boost iterator

是的 - 标题几乎总结了它。我有很多实现迭代器概念的类型,我想知道是否值得引入这个boost头而不是手动实现。

到目前为止:

优点

  • 指定明确
  • 不太可能有错误

2 个答案:

答案 0 :(得分:3)

如果维护自己的迭代器类型成为负担,那么切换到boost。它们经过明确规定和测试,不太可能出现错误。

答案 1 :(得分:2)

boost::iterator_facade并没有真正减少“错误发生率”。它只是简化了编写标准共形迭代器的过程。 100%标准的conformal迭代器可能仍然有bug :)关于另一个问题:

  

值得推动这一提升   头

是的,如果你经常写各种类别的迭代器的话。这个标题非常轻量级,很好,相对轻量级,因为从boost中提取的任何内容也带来了mpl和预处理器库的礼物。但是,我发现使用VC9或VC10时,这并不像以前编译时那样糟糕......