具有可变数量参数的函数调用

时间:2011-08-11 15:35:29

标签: c++11 variadic-templates

是否可以构造具有可变数量参数的函数调用(内部函数模板),具体取决于模板参数的数量?类似的东西:

void f(int i) {}
void f(int i1, int i2){}
void f(int i1, int i2, int i3){}
...

template<typename... T>
void caller() {
   f(/* sizeof...(T) number of arguments; of form T_i::value */);
}

1 个答案:

答案 0 :(得分:6)

是;模板参数包T可以与函数参数包一样扩展:

template<typename... T>
caller() {
   f(T::value...);
}