Odpowiedzi here i here są prawie tym, czego potrzebuję. Jednakże, że chcą być zdolne do generowania sekwencji, takich jak:Czas kompilacji generuj sekwencję całkowitą z jedną pominiętą
gen_seq<5, 2> // {0, 1, 3, 4}
gen_seq<3, 0> // {1, 2}
// optional behavior that would be useful for me:
gen_seq<4, 4> // {0, 1, 2, 3}
w przykładach I wykorzystywanych do generowania gen_seq sekwencję od 0 do n-1, bez I. nie jest obowiązkowo, ja też w porządku z gen_seq gdzie N jest długością sekwencji, a ja brakującym indeksem lub innymi wariantami.
Myślę, że na większość problemów już udzielono odpowiedzi w połączonych pytaniach. Jednak tak naprawdę nie mogę zawinąć głowy, jak włączyć warunek "zostaw to jedno wyjście" dla drugiego parametru.
Najlepiej byłoby, gdybym trzymał się funkcji C++ 11 i unikał C++ 14. Eleganckie i szczególnie czytelne soulutions przy użyciu C++ 14 również mogą być bardzo interesujące.