У меня есть такой класс enum (я планирую добавить в него больше опций позже):
enum class ViSequencePointType {
JumpToValue = 0,
RampToValue = 1
};
Затем у меня есть текстовый файл конфигурации, который в каждой строке должен представлять одно значение enum.Примерно так:
1
0
255
A
WTF
Мне нужно проанализировать этот файл и создать вектор этого класса enum ... поэтому я делаю что-то вроде:
bool conversionResult = false;
int colThree = line.toInt(&conversionResult);
if(!conversionResult) {
//failed to convert to integer
} else {
ViSequencePointType pt = static_cast<ViSequencePointType>(colThree);
switch(pt) {
case ViSequencePointType::JumpToValue:
break;
case ViSequencePointType::RampToValue:
break;
default:
break;
}
для этого default
В случае, если компилятор говорит
Метка по умолчанию в switch, которая охватывает все значения перечисления
, что, как я считаю, означает, что если в текстовом файле существует какая-либо недопустимая запись, я могуне найти его!
Так как же я могу подойти к этой проблеме, не пропуская недопустимое перечисление во время выполнения ?