我想为 STL 迭代器编写包装器。 它应该只改变某些方法的行为......
我认为它是这样的:
template<***>
class custom_iterator : public ***
{
T & iter;
public:
custom_iterator(T & iter) : iter(iter) {}
// for example, behaviour that increments value
T_val operator * () { return (*iter)+1; }
};
如何为所有类型的迭代器制作它?我的意思是:
- 输入迭代器
- 输出迭代器
- 正向迭代器
- 双向迭代器
- 随机访问迭代器
这怎么可能?
最佳答案
看看boost::transform_iterator
。我认为这就是您想要达到的目的。
关于c++ - STL迭代器包装器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6348359/