【发布时间】:2016-05-04 14:16:10
【问题描述】:
我有一个函数
template <typename T, typename... Args> void foo(const T&, Args...);
我想传递类似的东西:
foo(vector, 0,1,2,3,..., vector.size() - 1);
其中vector 是某种向量。我不能使用std::make_index_sequence,因为vector.size() 不是编译时常量。上述构造是否可行(例如,使用std::iota 作为助手),而不进行从 0 到无穷大的线性搜索来查找 vector.size() 等于什么?
【问题讨论】:
-
也许我完全误解了这个问题(而且我几乎可以肯定我这样做了;),但是当传递
vector时传递vector,0,1,2,3...,vector.size()-1有什么意义使得相同的信息可用于该函数?
标签: c++ function templates c++14 variadic-templates