Fra*_*ank 11 c++ boost iterator stl filter
我传递了一个迭代器,我必须将它传递给另一个函数 - 但是过滤掉了以便跳过某些元素(它是一系列指针,我想过滤掉NULL指针).
我用google搜索" stl filter iterator "来看看如何做到这一点,并且boost :: filter_iterator出现了.
这看起来不错,我可以使用它,但我可以用好的旧STL吗?当然,不要将元素复制到新容器中.
我想我会创建另一个迭代器类,它提供了必要的begin(),end()等功能,并执行过滤?所以我必须重新实现boost iterator_filter......?
你是对的; 你本质上是自己重新创建过滤器迭代器.我的建议是使用Boost的filter_iterator.Boost作为c ++最常用的外部库具有特殊的地位; 许多c ++委员会成员帮助编写了库以获得提升.它的无处不在基本上使它几乎成为现实; 这里真的没有理由重新发明轮子.
| 归档时间: |
|
| 查看次数: |
2742 次 |
| 最近记录: |