Поскольку C ++ расширяется, чтобы объединить обычные вычисления и вычисления типов, мне интересно, есть ли способ получить что-то подобное этой работе?
static const int x = 47;
using T = (x%2) ? int : double;
Я знаю, что могу использовать decltype в функции шаблона, которая возвращает различные типы, основанные на if constepr, но я хотел что-то короткое, как мой оригинальный пример.
template<auto i> auto determine_type(){
if constexpr(i%2) {
return int{};
} else {
return double{};
}
}
примечание: я счастлив использовать C ++ 20