是的 - 标题几乎总结了它。我有很多实现迭代器概念的类型,我想知道是否值得引入这个boost头文件而不是手动实现。使用boost :: iterator_facade有哪些优缺点?
到目前为止:
优势
- 好指定
- 不太可能有错误
是的 - 标题几乎总结了它。我有很多实现迭代器概念的类型,我想知道是否值得引入这个boost头文件而不是手动实现。使用boost :: iterator_facade有哪些优缺点?
到目前为止:
优势
如果维护自己的迭代器类型变成了负担,然后切换到升压。它们被详细说明和测试,并且不太可能有错误。
boost::iterator_facade
并未真正减少“错误发生率”。它只是简化了编写标准保形迭代器的过程。 100%的标准形迭代器仍然可能有错误:)至于其他问题:
这是值得在此提振 头拉
是的,这就是,如果你正在写经常是各种类别的迭代器。这个头文件非常轻量级,嗯,相对而言是轻量级的,因为你从boost中拉出的任何东西都带来了mpl和预处理器库的好处。但是,我发现,使用VC9或VC10,这不会像以前编译时那样糟糕......
好的.. +1 ...但是如何?外观只是一个前端,用于在迭代器上为您定义所需的运算符。 – 2010-04-07 06:56:24
你可以发布你的一个迭代器的问题如何做到这一点与提升? – 2010-04-07 07:00:56
当然,在我的其他问题中有一个使用'iterator_facade'的例子:http://stackoverflow.com/questions/2590310/can-i-use-boostmake-shared-with-a-private-constructor – 2010-04-07 07:23:38