Стоит ли включать type_traits только для получения базового типа перечисления?

Мне было интересно, если это действительно стоит включить type_traits заголовок, чтобы получить базовый тип перечисления. Я создаю класс Flags, который я хочу быть максимально гибким, поэтому я использую std::underlying_type<T>::type чтобы получить тип. Я мог бы использовать int например, а что если пользователь захочет использовать более 32 флагов? Итак, мой вопрос, может ли он значительно замедлить время компиляции при частом использовании?

0

Решение

Если вам нужен std :: under_type, тогда он вам нужен. Нет смысла писать свой собственный или ставить под угрозу свой код. Если вы хотите минимизировать время компиляции, затем объявите класс шаблона в заголовке и примените type_traits.cxx только в файлах .cxx, так что вы не обязательно наследуете ненужные заголовки в разных файлах. ,

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector