Форум » [x]Harbour » Одстрочный IF » Ответить

Одстрочный IF

Наиль: Можно ли конструкцию if условие continue endif записать в одну строку?

Ответов - 3

LYSK: Можно. вот так IF тратата ; continue... ; endif a можно поупражняться в остроумии и с функцией IIF (условие, выражение1, выражение2) а уж "выражение" можно наполнить любыми фантазиями...))

AlexMyr: Если работаешь с базой то dbeval(), если с массивом то aeval() и if... Наиль пишет: Можно ли конструкцию if условие continue endif записать в одну строку? можно вообще не использовать. Нужно смотреть задачу.

AndreyZh: Добрый день. В препроцессоре описываем конструкции: // Однострочный FOR #xcommand FOR <i>:=<s> TO <n> DO <*statement*> => FOR <i>:=<s> TO <n> ; <statement> ; END // Однострочный IF #xcommand IF <cond> THEN <*statement*> => IF <cond> ; <statement>; ENDIF // Конструкция DO ... UNTIL #xcommand REPEAT => DO WHILE TRUE #xcommand UNTIL <expr> => IF (<expr>); EXIT; END; END И пользуйтесь... Например: i := j:= 0 do whil .t. if i > 100 then loop for j:=1 to ++i do ? Str(i,3) end ВНИМАНИЕ на xHarboure пользоваться нужно с большой осторожностью, т.к. не всегда допускает вложенные конструкции, напрмер даёт ошибку (в clipper - ok) if a<b then sele alias; skip; loop, но конструкция if a<b sele alias; skip; loop endif корректно работает




полная версия страницы