Новости



Visual FoxPro 9 позволяет создавать ещё более производительные приложения баз данных.
Двадцатиление FoxPro! Microsoft принимает поздравления.
Visual FoxPro Toolkit for .NET - более 225 функций VFP 7.0, для языков .NET (подробнее)

Директива препроцессора #IF ... #ENDIF

См. также Пример

Осуществляет условное включение исходного кода на этапе компиляции.

Синтаксис

#IF nExpression1 | lExpression1
Commands
[#ELIF nExpression2 | #ELIF lExpression2
Commands
...
#ELIF nExpressionN | #ELIF lExpressionN
Commands
]
[#ELSE
Commands]
#ENDIF

Параметры

#IF nExpression1 | lExpression1
Commands

Аргумент nExpression1 задает числовое выражение, которое должно вычисляться.

fox90000.gif Если значение этого выражения отлично от нуля, команды, следующие непосредстве но за директивой #IF, будут включены в компилируемый код. Осуществляется выход из структуры #IF ... #ENDIF, и компиляция продолжается с первой программной ст оки, следующей за директивой #ENDIF.

fox90000.gif Если значение выражения равно 0, команды, следующие непосредственно за #IF, не включаются в компилируемый код. Вычисляются выражения следующих директив #ELIF.

Аргумент lExpression1 задает логическое выражение, которое должно вычисляться.

fox90000.gif Если значение этого выражения есть "истина" (.T.), команды, следующие непосре ственно за директивой #IF, будут включены в компилируемый код. Осуществляется в ход из структуры #IF ... #ENDIF, и компиляция продолжается с первой программ ой строки, следующей за директивой #ENDIF.

fox90000.gif Если значение выражения fox90001.gif "ложь" (.F.), команды, следующие непосредственно за #IF, не включаются в компилируемый код. Вычисляются выражения следующих директив #ELIF.

Замечание Не задавайте системные переменные памяти в качестве nExpression1 или lExpression1. Значения системных переменных памяти вычисляются только на этапе выполнения.

#ELIF nExpression2 | #ELIF lExpression2
Commands

...

#ELIF nExpressionN | #ELIFlExpressionN
Commands

Если значение выражения nExpression1 равно 0 или значение lExpression1 fox90001.gif "ложь" (.F.), вычисляются директивы #ELIF. Сначала вычисляется первое выраже ие #ELIF, nExpression2 или lExpression2. Если значение nExpression2 отлично от нуля или значение lExpression2 есть "истина" (.T.), команды, следующие за #ELIF, будут включены в компили уемый код. Осуществляется выход из структуры #IF ... #ENDIF, и компиляция продо жается с первой программной строки, следующей за директивой #ENDIF.

Если nExpression2 равно 0 или lExpression2 fox90001.gif "ложь" (.F.), команды, следующие за #ELIF, не включаются в компилируемый код. Вычисляется следующая директива #ELIF.

#ELSE Commands

Если директив #ELIF нет или они есть, но все дали значения 0 или "ложь" (.F.), то наличие директивы #ELSE определяет, будут ли включены в компилируемый код д угие команды.

fox90000.gif Если директива #ELSE указана, следующие за ней команды включаются в компили уемый код.

fox90000.gif Если директива #ELSE не указана, ни одна из команд, находящихся между #IF и #ENDIF, не включается в компилируемый код. Осуществляется выход из структуры #IF ... #ENDIF, и компиляция продолжается с первой программной строки, следующей за директивой #ENDIF.

#ENDIF

Указывает конец оператора #IF.

Комментарии

Благодаря применению структуры #IF ... #ENDIF повышается читаемость исходного кода, сокращается размер откомпилированной программы, а в некоторых случаях пов шается производительность.

При компиляции структуры #IF ... #ENDIF производится вычисление содержащихся в ней последовательных логических или числовых выражений; результаты вычислений определяют, какую группу команд Visual FoxPro следует или не следует включать в компилируемый код.



Новое на сайте

  • Обновлен портфель программиста

    Добавлены: Установка HTML Help (Создание справочной системы), Imagedit.zip - Графический редактор ( ico и bmp), Библиотека локализации HTML Help (Русский)
  • Новые примеры программ

    Установка библиотек, Игровая программа "Охота на лис", Установка библиотек "Охота на лис", plastic -"Платежки", Библиотеки (на FPD26), platan -"Платежки" (на Clipper 5.2)
  • Обновленна справка

    Подсказки, технология программирования и использование Visual FoxPro. Команды, функции, операторы, объекты, свойства, события и методы.