【发布时间】:2016-04-23 18:57:11
【问题描述】:
以下工作,但我觉得它必须是可能的,而无需在函数返回类型上使用 decltype:
typedef std::size_t SizeT;
template<SizeT... Indices> struct IndexList { };
template<SizeT... Is>
constexpr decltype(auto) ExtractIndices(std::integer_sequence<SizeT, Is...>)
{
return IndexList<Is...>{ };
}
template<SizeT N>
using MakeIndexSequence = std::make_integer_sequence<SizeT, N>;
template<SizeT N>
using MakeIndexList = decltype(ExtractIndices(MakeIndexSequence<N>{ }));
有没有更好的方法来改变参数包的“包装器类型”?
【问题讨论】:
标签: c++ variadic-templates indices