Новости



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

Передача параметров в процедуру или функцию

См. также

Передача величины в процедуру или функцию осуществляется с помощью параметров. Следующая процедура имеет единственный параметр:

PROCEDURE myproc( cString )

= MESSAGEBOX ("myproc" + cString) && Displays a message

ENDPROC

Замечание Параметр, заключенный в круглые скобки при определении процедуры или фу кции, например PROCEDURE myproc(cString), означает, что этот параметр будет иметь локальную область видимости в этой п оцедуре или функции. Кроме того, получить доступ к локальным параметрам из п оцедуры или функции можно с помощью PARAMETERS.

Параметры функций работают так же, как и параметры процедур. Чтобы передать в параметре значение в вышеуказанную процедуру, необходимо использовать строку и и переменную, содержащую строку, как это показано в следующей таблице.

Передача параметров

Код
Комментарии
DO myproc WITH cTestString
DO myproc WITH "test string"
Вызов процедуры и передача собственно строки или символьной переменной.
= myfunc("test string")
= myfunc( cTestString )
Вызов функции и передача копии символьной переменной или символьной строки.


Замечание При использовании знака = установка UDFPARMS управляет способом передачи па аметров. По умолчанию для UDFPARMS установлено значение VALUE, поэтому пере аются копии параметров. Если для вызова применяется DO, то передаются непосредстве но параметры (параметры передаются по ссылке), а их изменения в процедуре или функции изменяют и исходные данные, независимо от значения установки UDFPARMS.

В процедуру или функцию можно передать несколько параметров, разделив их запят ми. Следующая процедура, например, принимает три параметра: дату, символьную строку и число.

PROCEDURE myproc( dDate, cString, nTimesToPrint )

FOR nCnt = 1 to nTimesToPrint

? DTOC(dDate) + " " + cString + " " + STR(nCnt)

ENDFOR

ENDPROC

Вызов этой процедуры осуществляется следующей строкой кода:

DO myproc WITH DATE(), "Hello World", 10



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

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

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

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

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