Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Процедуры и функции




В FoxPro предусмотрена широкая возможность использования процедур, которые могут быть как внешними (в виде отдельных программных файлов), так и внутренними (внутри программы). Частным случаем процедуры является процедура-функция. Эти средства удобно использовать для реализации некоторых одинаковых алгоритмов обработки данных. Тогда такой алгоритм программируется один раз и вызывается в системе по мере необходимости.

Обращение к процедуре выполняется командой

Do <имя командного файла> With <список параметров>.

В процедуру могут быть переданы и из нее получены некоторые величины, указанные в списке параметров после слова With. Этими величинами могут быть переменные, константы и любые разрешенные выра­же­ния. В этом случае первой командой в вызываемой процедуре должна быть Parameters <список параметров>.

Параметры, указанные в команде Do после слова With, на­зы­вают­ся фактическими или аргументами, а соответствующие им параметры в вызываемой процедуре (в команде Parameters) - формальными или просто параметрами.

Передаваемые параметры по типу должны соответствовать друг другу. Число аргументов и параметров может и не совпадать.

Узнать число фактически переданных параметров можно с помощью функции Parameters().

Завершаются файлы-процедуры одним из следующих способов:

1) достижением последней команды файла - осуществляется возврат в вызвавшую программу или на командный уровень, если это самый старший модуль;

2) командой Return - возврат в старшую программу;

3) командой Cancel - выход на командный уровень;

4) командой Quit - выход из FoxPro в Windows.

Команда Return имеет вид:

Return [То Master/<процедура>/<Bыр>]

Здесь фраза Return То Master указывает на переход к самому верх­не­му уровню вызывающих процедур, a Return То <процедура> - возврат на процедуру с указанным именем. Элемент <Выр> применяется для передачи в вызывающую программу результата, если процедура используется как процедура-функция.

В первом и втором случаях возврат в старшую программу вы­пол­няется на команду, следующую за той, от которой произошел вызов под­программы. Однако при некоторых обстоятельствах бывает желательно вер­нуться именно на команду вызова. Это можно сделать командой Retry.

Совокупность команд, составляющих внутреннюю процедуру, должна начинаться командой Procedure <имя процедуры>.

Внутренняя процедура-функция должна начинаться с команды

Function <имя функции>.

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

Завершается процедура или функция командой Return [<Выр>], где

<выр> -результат функции (.Т.).

FoxPro не делает различий между процедурами и функциями.

К функции можно обращаться и как к процедуре - командой Do. В этом случае при возврате в исходную программу значение <выр> в команде Return игнорируется.




Поделиться с друзьями:


Дата добавления: 2014-12-10; Просмотров: 411; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.