Оператор множественного выбора S/switch
S <выражение> <константное выражение 1> <блок кода 1> <константное выражение 2> <блок кода 2> ... [E <блок кода в противном случае>]
Выражение
<выражение> сравнивается с константными выражениями и в случае равенства выполняется соответствующий блок кода. Если ни одно константное выражение не совпало с выражением <выражение>, то выполняется [при его наличии] <блок кода в противном случае>(отмеченный ключевым словом
E/else).Оператор
S/switch можно использовать в выражениях:V tag = S prevc ‘*’ ‘b’ ‘_’ ‘u’ ‘-’ ‘s’ ‘~’ ‘i’Или в одну строку. Так:
V tag = S prevc {‘*’ {‘b’}; ‘_’ {‘u’}; ‘-’ {‘s’}; ‘~’ {‘i’}}или так:
V tag = S prevc {‘*’ {‘b’} ‘_’ {‘u’} ‘-’ {‘s’} ‘~’ {‘i’}}
Если ваш switch получился слишком большим и он не помещается на экран, тогда вы можете добавить комментарий к каждому "case":
S message WM_CREATE // case ... WM_DESTROY // case ... WM_KEYDOWN // case ... ... E // case ...Или таким образом
S!
Вы можете поставить
!сразу после ключевого слова
S/switch, чтобы обеспечить ограничение на этапе компиляции, согласно которому все возможные значения в <выражение> должны иметь соответствующую ветвь выполнения.