Может ли класс перечисления быть вложенным?C++

Программы на C++. Форум разработчиков
Anonymous
Может ли класс перечисления быть вложенным?

Сообщение Anonymous »

Можно ли это сделать?

Код: Выделить всё

enum A
{
enum B
{
SOMETHING1,
SOMETHING2
};

enum C
{
SOMETHING3,
SOMETHING4
};
};
Если нет, то есть ли альтернативное решение?

Цель этого вопроса: Хочу/нужно иметь возможность сделать что-то вроде этого:

Код: Выделить всё

enum class ElementaryParticleTypes
{

enum class MATTER
{
enum class MESONS
{
PI
};

enum class BARYONS
{
PROTON,
NEUTRON
};

enum class LEPTONS
{
ELECTRON
};
};

enum class ANTI_MATTER
{
enum class ANTI_MESONS
{
ANTI_PI
};

enum class ANTI_BARYONS
{
ANTI_PROTON
ANTI_NEUTRON
};

enum class ANTI_LEPTONS
{
POSITRON
};
};

};
Хотите использовать возможности строгой типизации.

Подробнее здесь: https://stackoverflow.com/questions/150 ... -be-nested

Вернуться в «C++»