Перечисления должны быть объявлены как ограниченные по объему классы Enum.
Перечисления должны быть объявлены как ограниченные по объему классы Enum.
Перечислимые величины в неограниченном по объему перечислении могут конфликтовать с другими идентификаторами в том же осциллографе как перечисление и вызвать ошибки компиляции. Например:
enum E: std::int32_t { E0, E1}; std::int32_t E0;
Если вы определяете объем перечисления, таких конфликтов можно избежать. Например:
enum class E: std::int32_t { E0, E1}; std::int32_t E0;
Определение объема перечисления также запрещает неявные преобразования перечислимых величин к другим типам.
Если вы ожидаете нарушение правила, но не видите его, обратитесь к Кодированию Стандартных Нарушений, Не Отображенных.
Группа: объявление |