Обращение к enum по имени - C (СИ)
Формулировка задачи:
Привет!
Частонько использую перечислимые типы, но мне не нравится то, что к ним нельзя обращаться по имени.
К примеру:
если я хочу присвоить переменной ddd какое нить значение, то пишу
enum {
one=1,
two
} numbers;ddd = two
, а хотелось бы что то типаddd = numbers.two
, тоесть как при работе со структурой. ЗЫ: конечно можно использовать структуры вместо enum, но если содержится около 50-100 елементов, то как то не особо хочется присваивать всем значения. Спасибо!Решение задачи: «Обращение к enum по имени»
textual
Листинг программы
namespace Numbers{
enum Enum {
One = 1,
Two
};
}
Numbers::Enum a = Numbers::One;
Объяснение кода листинга программы
- Объявляется пространство имен
Numbers. - Внутри пространства имен объявляется перечисление
Enumс двумя элементами. - Переменная
aинициализируется значением первого элемента перечисленияEnum.