Я читаю значение enum
из двоичного файла и хочу проверить, действительно ли значение является частью значений enum
. Как я могу это сделать?
#include <iostream>
enum Abc
{
A = 4,
B = 8,
C = 12
};
int main()
{
int v1 = 4;
Abc v2 = static_cast< Abc >( v1 );
switch ( v2 )
{
case A:
std::cout<<"A"<<std::endl;
break;
case B:
std::cout<<"B"<<std::endl;
break;
case C:
std::cout<<"C"<<std::endl;
break;
default :
std::cout<<"no match found"<<std::endl;
}
}
Нужно ли использовать оператор switch
или есть лучший способ?
ИЗМЕНИТЬ
У меня есть значения перечисления, и, к сожалению, я не могу их изменить. Чтобы ухудшить ситуацию, они не являются непрерывными (их значения равны 0, 75,76,80,85,90,95,100 и т.д.).