Re[15]: enum class and if expression
От: rg45 СССР  
Дата: 19.12.19 18:47
Оценка:
Здравствуйте, B0FEE664, Вы писали:

BFE>Это в enum class нет максимального, а вот в просто enum — есть.



А я-то думал, ты шутишь. Почему нет-то? Вот, твой же пример, переделанный под scoped enum-ы:

http://coliru.stacked-crooked.com/a/38fc39024456e980

template<typename>
struct min_element;

template<typename T, T head, T...tail>
struct min_element<std::integer_sequence<T, head, tail...>> {
    static constexpr T value = std::min(head, min_element<std::integer_sequence<T, tail...>>::value);
};

template<typename T, T head>
struct min_element<std::integer_sequence<T, head>> {
    static constexpr T value = head;
};

enum class EE {
    a, b, c, d
};
using EE_sequence = std::integer_sequence<EE, EE::a, EE::b, EE::c, EE::d>;

static_assert(EE::a == min_element<EE_sequence>::value);
--
Справедливость выше закона. А человечность выше справедливости.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.