[英]Matching std::index_sequence by default argument
模板參數推導是否允許以下內容?還是未推論的上下文?
#include <utility>
#include<tuple>
template<std::size_t... I>
auto make(std::index_sequence<I...> = std::make_index_sequence<2>())
{
return;
}
int main() {
make();
}
默認參數不是推論的一部分。
因此,您無法在此處(那樣)做您想做的事情。
如果合適,您可以這樣做:
template <typename Seq = std::index_sequence<0, 1>>
auto make(Seq = std::make_index_sequence<2>())
{
/*...*/
}
對於它的價值,它可以編譯為:
template<std::size_t... I>
auto make(std::index_sequence<I...> = std::make_index_sequence<sizeof... (I)>())
但可能無法滿足您的需求。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.