Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗cpOpEnEC 92 of 150 menu
◀ ▶

Перечисление enum class в C++

Ключевое слово enum class задает отдельный тип с заранее известным набором значений. Константы перечисляют в теле объявления; добавить новую константу можно только изменив само объявление типа.

Переменная этого типа хранит ровно одну из перечисленных констант. Запишем enum class Day с семью днями и сохраним в переменной понедельник:

#include <iostream> enum class Day { monday, tuesday, wednesday, thursday, friday, saturday, sunday }; int main() { Day today = Day::monday; switch (today) { case Day::monday: std::cout << "monday\n"; break; case Day::tuesday: std::cout << "tuesday\n"; break; case Day::wednesday: std::cout << "wednesday\n"; break; case Day::thursday: std::cout << "thursday\n"; break; case Day::friday: std::cout << "friday\n"; break; case Day::saturday: std::cout << "saturday\n"; break; case Day::sunday: std::cout << "sunday\n"; break; } return 0; }

Тип переменной можно указать явно, как у любого другого типа. Запишем enum class Mode и переменную с явным типом Mode:

#include <iostream> enum class Mode { view, edit }; int main() { Mode mode = Mode::edit; switch (mode) { case Mode::view: std::cout << "view\n"; break; case Mode::edit: std::cout << "edit\n"; break; } return 0; }

Объявите enum class Planet с константами mercury, venus и earth. Сохраните Planet::earth в переменную home и выведите для нее короткую метку через switch.

Объявите enum class Size с константами s, m и l. Создайте переменные first и second со значением Size::m и выведите true, если они совпадают, иначе false.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить