如何为合成数据创建迭代器
how to create iterators for synthetic data?
我正在使用boost::iterator_facade<>
进行合成数据的迭代器。数据只能通过调用句柄上的函数来访问。手柄被包裹在MyHandle
中。我已经弄清楚,我需要使用MyHandle
为Value
和Reference
模板参数。所以迭代器声明是这样的:
class MyIterator
: public boost::iterator_facade<
MyIterator
, MyHandle
, boost::forward_traversal_tag
, MyHandle
>
这是做这种事情的唯一方法吗?或者是否有更好的方法为合成数据创建迭代器?此外,boost::forward_traversal_tag
似乎没有很好地传达数据的人为性,代码应该使用不同的迭代器标签吗?
boost::function_input_iterator
将生成器函数包装在迭代器中。对迭代器进行解引用,调用函数并返回结果:
相关文章:
- 从 bmp 文件数据创建 MFC CBitmap
- 如何在 QML 中使用从 c++ 公开的序列数据创建图表
- c++用输入数据创建数组
- 使用 2D 数据创建 3D 直方图(OpenCV?
- 如何使C++代码更快:使用 CFile 从相机数据创建.csv文件
- 使用 C++ 从 16 位数据创建灰度图像
- 如何根据过滤的数据创建笛卡尔产品范围
- C 双重调度,出厂模式或一种从接收到的序列数据创建派生对象的方法
- 为 ppm/pgm 图像数据创建存储
- 如何从二进制数据创建 QIcon
- 基于输入数据创建 STL 向量 - 标量或复杂类型
- DirectX11如何从未签名的char*数据创建Texture2D
- 使用相机的初始数据创建d3d11Texture2D
- OpenCV C++:从存储在 int 向量的索引中为垫子类型数据创建列范围
- 如何使用矢量中的数据创建矢量
- 从单独文件(C++)中的用户输入数据创建矢量
- 为二进制数据创建字符串缓冲区的最佳方法
- 使用Media Foundation从原始数据创建AAC文件
- 在Visual Studio 2013中使用c++中的对象字段数据创建图表
- 如何从变量数据创建std::initializer_list