Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
otvety_na_ekzamen.doc
Скачиваний:
74
Добавлен:
13.02.2015
Размер:
848.9 Кб
Скачать

72. Процедуры и функции в языке vbs

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

Разница между процедурой и функцией:

имя функции после ее выполнения приобретает некоторое значение (имя функции возвращает вычисленное значение), в результате она может использоваться в составе выражений (математических, строковых и др.) программы;

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

Синтаксис описания процедуры следующий:

[Public | Private] Sub <имя_проц.> [(<сп.арг.>)]     [<операторы>]     [Exit Sub] [<операторы>]

End Sub

где: Public– показывает, что процедура доступна во всех других процедурах программы (является значением По-умолчанию); Private – показывает, что процедура доступна только в тех процедурах программы, где она объявлена; имя_проц. – имя процедуры, составленное по правилам написания идентификаторов; сп.арг. – список аргументов, которые передаются процедуре, когда она вызывается для исполнения; элементы списка разделяются запятыми; операторы – любая группа операторов, которая будет исполняться в процедуре.

Процедуры могут использовать локальные и глобальные переменные. Локальные переменные могут быть объявлены в процедуре с использованием структуры Dim <переменные>. Переменные, которые используются в процедуре, но явно не объявлены, также локальные, если они явно не объявлены на более высоком уровне за пределами процедуры.

Exit Sub может использоваться для выхода из любого места процедуры с возвратом на следующую строку в программе после ее вызова. Вызов процедуры необходимо выполнять с использованием структуры [Call] <имя_проц.> [(<сп.арг.>)]. Можно не использовать ключевое слово Call при вызове процедуры, в этом случае список аргументов должен быть написан без круглых скобок сразу именем процедуры: <имя_проц.> <сп.арг.>. Если используется ключевое слово Call, список аргументов должен быть написан в круглых скобках: Call <имя_проц.> (<сп.арг.>). Синтаксис описания функции следующий:

[Public | Private] Function <имя_функц.> [(<сп.арг.>)]     [<операторы>]     [<имя_функц.> = <выражение>]     [Exit Function]     [операторы]     [<имя_функц.> = <выражение>] End Function

где:

имя_функц. – имя функции, составленное по правилам написания идентификаторов;

выражение – вычисляемое значение, которое возвращает имя функции;

остальные обозначения те же, что и для процедуры.

Значение, возвращаемое функцией, по умолчанию имеет тип Public, если не указано иное (Private).

Аналогично процедуре, функция не может быть вложенной в другую функцию.

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