Здравствуйте, vopl, Вы писали:
V>например
V>V>#include <errno.h>
V>template <auto... set>
V>bool isin(auto val)
V>{
V> return (false || ... || (set == val));
V>}
V>int main()
V>{
V> //
V> if(isin<EAGAIN,
V> EWOULDBLOCK,
V> EINTR,
V> ENOSPC,
V> ENOBUFS,
V> ENOMEM>(errno))
V> {
V> return 0;
V> }
V> return 1;
V>}
V>
Вот бы уменьшить число сравнений с помощью бинарного поиска в упорядоченном ряде значений.
Взять какой-нибудь constexpr set и вызвать метод contains().
Есть например
https://github.com/serge-sans-paille/frozen , но я его не пробовал.