(Этот вопрос имеет ответ Nim, в котором упоминается boost:: mpl:: map.)
Есть ли в стандартном С++ контейнере времени компиляции, который может хранить типы?
Пример использования:
compiler::vector foo{char, short, long, long long};
template <int N>
void bar(foo[N] param){/*do something and return foo[N]*/}