Можете ли вы сказать мне, как отключить предупреждение компилятора / кодовой модели только для одного блока switch / case?
В общем, я думаю, что очень полезно быть предупрежденным, но здесь он жалуется на перечисление 167значения, явно не обработанные в switch
.
. Я нашел этот другой вопрос:
c ++ предупреждение: значение перечисления не обрабатывается в переключателе [-Wswitch]
В нем говорится, что вы можете избавиться от предупреждения с помощью default: break;
, но в этом случае (недавний QtCreator с clang) это не применяется.
Я знаю, что мог бы изменить код на if/else if/else if ..
, ноЯ ожидаю, что список обработанных дел будет со временем расти, поэтому я бы предпочел остаться с switch/case
.
Итак, мой вопрос, есть ли какое-либо ключевое слово / макрос / комментарий / атрибут, который говорит, что игнорироватьпроблема только для этого единственного блока?
Следующий код выдает предупреждение, остальные 167 значений кажутся возможными возвращаемыми значениями QEvent::type()
, которые являются частью Qt:
bool MyClass::event(QEvent * e) {
switch(e->type()) {
case QEvent::HoverEnter:
qDebug() << "enter";
return true;
case QEvent::HoverLeave:
qDebug() << "leave";
return true;
case QEvent::HoverMove:
qDebug() << "move";
return true;
default:
break;
}
return Piece::event(e);
}