这是功能
template<class... Args>
void f(Args... args) {
std::array<int, sizeof...(args)> test = {args...};
}
我希望数组具有参数包中第一个参数的类型。我怎样才能得到这种类型?
这是功能
template<class... Args>
void f(Args... args) {
std::array<int, sizeof...(args)> test = {args...};
}
我希望数组具有参数包中第一个参数的类型。我怎样才能得到这种类型?
如果参数列表必须至少包含一个(参数),则可以将第一个参数移动到单独的模板参数中:
如果你不想破坏参数列表(例如,如果它在函数中更多的地方使用),你可以使用 tuple_element: