Это не имеет ничего общего с Qt, равно как и с цветом ваших носков.
С ++ Синтаксис переключателя выглядит следующим образом:
char c = getc();
switch( c ) {
case 'a':
a();
break;
case 'b':
b();
break;
default:
neither();
}
Если это не поможет, пожалуйста, подробно перечислите сообщение об ошибке, возможно, вместе с цветом ваших носков.
Редактировать : чтобы ответить на ваш ответ, вы не можете использовать switch
с нецелыми типами. В частности, вы не можете использовать типы классов. Не объекты типа QString
и не объекты любого другого типа. Вместо этого вы можете использовать конструкцию if-else if-else
, или вы можете использовать полиморфизм времени исполнения или компиляции, или перегрузку, или любой из массива альтернатив switch
.