【发布时间】:2014-08-30 03:20:30
【问题描述】:
以下代码在 C++11 中是合法的。
template<int... N>
std::tuple<decltype(N)...> f()
{
return std::make_tuple(7 + N...);
}
什么意思?
【问题讨论】:
-
你怎么知道它是合法的?如果您将它提供给编译器并且它没有抱怨,那几乎没有任何意义。
-
此代码在 C++11 中是不合法的。由于缺少尾随返回类型,这是 C++14 代码。
-
@n.m.,我只是盲目相信gcc。
-
@Potatoswatter 现在问题中没有可编译的代码,恕我直言,编辑不好......
-
好了,C++11了。
标签: c++ templates c++11 variadic-templates compile-time-constant