#cpp
Каким образом определить 2 enum с одинаковыми полями?
enum horizontal_alignment
{
stretch = 0x0,
center,
left,
right
};
enum vertical_alignment
{
stretch = 0x0,
center,
top,
bottom
};
Ответы
Ответ 1
Либо спрятать каждый enum в отдельный namespace или класс. Либо использовать scoped enum enum class horizontal_alignment { stretch = 0x0, center, left, right }; enum class vertical_alignment { stretch = 0x0, center, top, bottom }; Разумеется, обращаться к элементам таких enum придется с указанием полного имени vertical_alignment::stretch.Ответ 2
Если хотите два enum с одинаковыми полями, отметьте хотя бы один из них как class. enum class horizontal_alignment { stretch = 0x0, center, left, right }; enum vertical_alignment { stretch = 0x0, center, top, bottom };
Комментариев нет:
Отправить комментарий