Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VisualFoxPro.doc
Скачиваний:
15
Добавлен:
01.07.2025
Размер:
11 Мб
Скачать
☆

5.8.7. Команды для процедур и функций

5.8.7.1. Задание и редактирование программных компонентов

Команды

PROCEDURE ProcedureName [LPARAMETERS | PARAMETERS parameter1 [AS para1type [OF ClassLib]] [, parameter2 [AS para2type [OF ClassLib]] ...] Commands [RETURN [eExpression | TO MASTER | TO ProcedureName]] [ENDPROC]

или

PROCEDURE ProcedureName([parameter1 [AS para1type] [, parameter2 [AS para2type]], ...]) [AS returntype] Commands [RETURN [eExpression | TO MASTER | TO ProcedureName]] [ENDPROC]

задают процедуру.

Опции, параметры и команды:

ProcedureName – имя процедуры. Не должно содержать более 254 символов.

LPARAMETERS | PARAMETERS – команда, создающая и инициализирующая переменные-формальные параметры процедуры. Команда LPARAMETERS создает локальные, а команда PARAMETERS – частные переменные.

parameter1, parameter2, … – имена формальных параметров процедуры, в качестве которых могут употребляться как скалярные переменные, так и массивы. Максимальное число параметров – 26. Число формальных параметров должно быть не меньше числа фактических параметров. Если число фактических параметров меньше числа формальных, то избыточные формальные параметры инициализируются значением .F.

AS type – тип данных формального параметра. Используется, когда необходима строгая типизация параметров.

OF ClassLib – библиотека класса, содержащая описание типа type.

Команда LPARAMETERS | PARAMETERS должна быть первой командой процедуры. Команда может присутствовать в процедуре только в одном экземпляре.

Число переданных параметров возвращается функцией PARAMETERS( ) или PCOUNT( ).

Commands – операторы, выполняемые процедурой.

RETURN – команда, прерывающая выполнение процедуры и определяющая возвращаемое процедурой значение, используемое в выражении, из которого процедура вызвана. Если команда опущена, то возвращаемое значение устанавливается равным .T. Подробно команда описана в разд. 7.3.

После процедуры в файле нельзя продолжить код основной программы, но можно разместить иные процедуры, функции и определения классов.

Команды

FUNCTION ProcedureName [LPARAMETERS | PARAMETERS parameter1 [AS para1type [OF ClassLib]] [, parameter2 [AS para2type [OF ClassLib]] ...] Commands [RETURN [eExpression | TO MASTER | TO ProcedureName]] [ENDFUNC]

или

FUNCTION ProcedureName([parameter1 [AS para1type] [, parameter2 [AS para2type]], ...]) [AS returntype] Commands [RETURN [eExpression | TO MASTER | TO ProcedureName]] ENDFUNC

задает функцию.

Функция VFP имеет те же характеристики, что и процедура.

Команда

MODIFY COMMAND [FileName | ?] [NOEDIT] [NOMENU] [NOWAIT] [RANGE nStartCharacter, nEndCharacter] [[WINDOW WindowName1] [IN [WINDOW] WindowName2 | IN SCREEN]] [AS nCodePage] [SAME] [SAVE]

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

Опции и параметры см. в описании команды MODIFY FILE.

Функция

EditSource(cShortCutID | [ cFilename [, nLineNo] [, cClassName] [, cMethodName | cProcName]])

открывает редактор VFP, размещая курсор на указанной строке.

Функция возвращает один из приведенных в табл. 5.4 результатов.

Таблица 5.4

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]