Эффективные конструкции языка – оператор 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 существенно улучшает читабельность кода.
