Эффективные конструкции языка – оператор CASE
Следует всегда использовать оператор CASE вместо серии вложенных операторов IF – это улучшает производительность (Программа 67):
Программа 67. Оператор CASE
DEFINE VARIABLE a AS INTEGER NO-UNDO. DEFINE VARIABLE i AS INTEGER NO-UNDO. a = 0. ETIME (TRUE). DO i = 1 TO 10000: IF a > 0 THEN DISPLAY '+'. ELSE IF a < 0 THEN DISPLAY '-'. ELSE IF a = 0 THEN DISPLAY 'ZERO'. ELSE DISPLAY 'Unknown'. END. MESSAGE ETIME VIEW-AS ALERT-BOX INFO BUTTONS OK. ETIME(TRUE). DO i = 1 TO 10000: CASE TRUE: WHEN a > 0 THEN DISPLAY '+'. WHEN a < 0 THEN DISPLAY '-'. WHEN a = 0 THEN DISPLAY 'ZERO'. OTHERWISE DISPLAY 'Unknown'. END CASE. END. MESSAGE ETIME VIEW-AS ALERT-BOX INFO BUTTONS OK.
Кроме того, использование оператора CASE существенно улучшает читабельность кода.