【发布时间】:2017-11-05 19:18:01
【问题描述】:
考虑以下函数
template <class... T, class... U>
void f(std::tuple<T...> t, std::tuple<U...> u)
{
std::cout << sizeof...(T) << " " << sizeof...(U) << std::endl;
}
int main(int argc, char* argv[])
{
f({3, 3.5, "Hello World!"}, {'a', std::string("b")}); // Fails
return 0;
}
在 C++17 中是否有任何方法可以修改函数签名,以便标记为“失败”的行可以工作? (保持那条线不变)。
【问题讨论】:
标签: c++ initialization tuples c++17 aggregate-initialization