相关疑难解决方法(0)

如何检查传递的Iterator是一个随机访问迭代器?

我有以下代码,它执行一些迭代器算术:

template<class Iterator>
void Foo(Iterator first, Iterator last) {
  typedef typename Iterator::value_type Value;
  std::vector<Value> vec;
  vec.resize(last - first);
  // ...
}
Run Code Online (Sandbox Code Playgroud)

(last - first)表达的作品(据我所知)仅适用于随机访问迭代器(像的那些vectordeque).如何检查传递的迭代器满足此要求的代码?

c++ iterator stl

30
推荐指数
2
解决办法
6210
查看次数

标签 统计

c++ ×1

iterator ×1

stl ×1