是否有一个迭代器的标准实现(意味着 stdlib 或 boost),它包装了另一个迭代器并只给出它的每个第 n 个元素?
我首先认为这可以通过合适的谓词和 boost::filter_iterator 来实现,但是谓词只获取值而不是基迭代器,因此它无法判断到开始的距离。
编辑
以提供更多信息:迭代器应与std::transform
或之类的函数兼容std::copy
。所以它应该像 stdlib 迭代器一样使用。
类似的问题:
C++/STL: std::transform with given stride?
具有非随机访问迭代器的非单元迭代器步幅