Тип лежания в основе перечисления должен быть явным образом задан.
Тип лежания в основе перечисления должен быть явным образом задан.
В неограниченном по объему объявлении перечисления, таком как:
enum someEnum : type { ... }
если:
не использован, базовый тип задан реализацией (с единственным требованием, чтобы тип вместил все перечислимые величины). Объявление базового типа явным образом приводит к заданному реализацией поведению.type
В ограниченном по объему объявлении перечисления, таком как:
enum class someEnum : type { ... }
если:
не использован, базовым типом является type
int
. Если перечислимая величина превышает значения, допускал int
, вы видите ошибки компиляции.
И для неограниченных по объему и для ограниченных по объему перечислений, объявите, что базовый тип явным образом избегает заданного реализацией поведения или ошибок компиляции.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: объявление |
Категория: необходимый, автоматизированный |