Функции и процедуры в VB

Источник: realcoding
BiT

Функции и процедуры в VB

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

Процедуры обработки событий после вызова постоянно находятся в ожидании событий. 

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

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

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

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

Синтаксис объявления процедуры и функции: 

Код: 
[Public/Private][Static] Sub <Имя процедуры>(<Параметры>) 
<Операторы> 
End Sub 

Function <Имя функции> [As тип] 
<Операторы> 
End Function

Процедуры, объявленные с ключевым словом Public, можно вызвать в любом модуле приложения (каждая форма - это отдельный модуль). 

Процедуры объявленные как Private, можно вызывать только в текущем модуле. 

Слово Static означает, что все переменные, объявленные в процедуре, будут статическими, т.е. их значения сохраняются между вызовами. 

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

Процедуры обработки событий. Вызываются в том, случае если произошло какое-либо событие. При этом существенным является как имя элемента, та и вид события, который с ним произошел. 

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

Встроенные функции. Определенные наборы команд, имеющиеся в языке Visual Basic и в предназначенные для вычисления тех или иных значений на основании исходных данных. Встроенными являются, в частности, как математические, так и строковые функции (Abs, Cos, Sin, Mid, Len и т.д.) 

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

Однако между ними есть ряд отличий. 

Основные отличия функции от процедуры состоят в следующем. 

1. Функция имеет тип (аналогично переменной) и может возвращать в программу значение, которое присваивается функции при помощи оператора: 

<Имя функции> = значение 

2. Вызов функции, как правило, осуществляется посредством указания в правой части какого-либо оператора ее имени и параметров. С другой стороны, процедура вызывается при помощи отдельного оператора: 

Call <Имя процедуры> (Параметры) 
Или 
<Имя процедуры> (Параметры) 

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

Необходимо отметить, что вызываемая процедура может не иметь параметров. В этом случае (если использовалось служебное слово Call) после имени процедуры следует ставить пустые скобки. 

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

Команда Add Procedure меню Tools позволяет добавить процедуру или функцию. 

Пусть процедура Cir вычерчивает эллипс с координатами x, y, которые передаются в процедуру как параметры. Создавая процедуру Cir командой Add Procedure, нужно указать имя процедуры и выбрать область видимости Public или Private. 

Завершив диалог, получим объявление процедуры: 

 

Код: 
Private Sub Cir() 
… 
End Sub

Теперь нужно вписать параметры в скобки и написать текст процедуры. В списке параметров рекомендуется указывать тип переменных. 

 

Код: 
Private Sub Cir(x As Integer, y As Integer) 
Circle (x,y),500,,,2 
End Sub


Страница сайта http://www.interface.ru
Оригинал находится по адресу http://www.interface.ru/home.asp?artId=30021