Я хочу сильные типы enum.В C ++ 0x есть эта функция, но, к сожалению, они также требуют явного определения объема:
enum class E {e1, e2, e3};
E x = E::e1; //OK
E y = e1; //error
Иногда это желательно, но иногда это просто излишне многословно.Идентификаторы могут быть достаточно уникальными сами по себе, или перечисление уже может быть вложено в класс или пространство имен.
Так что я ищу обходной путь.Что было бы лучшим способом объявить значения перечисления также в окружающей области видимости?