Написание первой процедуры
На этом занятии будет рассказано, как создать процедуру— самодостаточный блок кода, который может быть запущен из других блоков кода. Затем описывается, как создать параметрыдля процедур.
Процедура — только блок кода, который сообщает программе, какие действия нужно выполнять. Процедуры уже использовались на предыдущих занятиях, хотя вы могли не обратить на это внимания. Например, функция MsgBox является встроенной процедурой, выполняющей вывод диалогового окна.
Хотя Visual Basic имеет многие встроенные процедуры для выполнения общих действий, всегда есть случаи, когда программе требуется выполнять действия, которые встроенные процедуры не обрабатывают. Например, функция MsgBox не может отобразить диалоговое окно с рисунком. Необходимо написать собственную процедуру для выполнения этой задачи.
Что такое процедура
Процедура — самодостаточный блок кода, который может быть запущен из других блоков кода. В целом каждая процедура содержит код, необходимый для выполнения одной задачи. Например, может быть процедура с именем PlaySound, которая содержит код, необходимый для воспроизведения звукового файла. Конечно, можно писать один и тот же код для воспроизведения звукового сигнала каждый раз, когда программе нужно воспроизвести звук, но гораздо более рационально создать одну процедуру, которую можно вызвать из любого места в программе.
Процедура запускается или выполняется путем ее вызова в коде. Например, для запуска процедуры PlaySound нужно просто добавить строку кода, содержащую имя процедуры, как показано ниже.
PlaySound()
Вот и все, что нужно! Когда выполнение программы дойдет до этой строки, управление перейдет к процедуре PlaySound, и будет выполнен содержащийся там код. Управление снова будет передано на следующую строку после вызова PlaySound.
Можно вызывать сколько угодно процедур. Процедуры выполняются в том порядке, в котором они вызываются. Например, может существовать также процедура с именем DisplayResults; для ее выполнения после выполнения процедуры PlaySounds вызовите процедуры, как показано ниже.
PlaySounds()
DisplayResults()
Функции и процедуры
Есть два типа процедур: функции и подпрограммы (иногда называемые subs). Функция возвращает значение в код, который вызвал ее, тогда как подпрограмма просто выполняет код. Подпрограммы вызываются при добавлении в программу строки кода, содержащей имя подпрограммы, как в следующем примере.
DisplayResults
Функции отличаются от подпрограмм, поскольку они не только выполняют код, но также возвращают значение. Например, представьте функцию, называемую GetDayOfWeek, возвращающую значение типа Integer, указывающее день недели. Для вызова этой функции сначала следует объявить переменную для хранения возвращаемого значения, а затем присвоить возвращаемое значение этой переменной для последующего использования, как показано ниже.
Dim Today As Integer
Today = GetDayOfWeek
В этом примере значение, возвращаемое функцией, копируется в переменную с именем Today и хранится для последующего использования.
Написание процедур
Написание процедуры начинается с объявления процедуры. Объявление процедуры выполняет несколько задач. Оно указывает, является ли процедура функцией или подпрограммой, присваивает процедуре имя и подробно описывает параметры, которые может иметь процедура. (Параметры будут обсуждаться подробно чуть позже на этом занятии.) Ниже приведен пример простого объявления процедуры.
Sub MyFirstSub()End SubКлючевое слово Sub сообщает программе, что эта процедура является подпрограммой и не возвращает значение. Дальше пишется имя процедуры (MyFirstSub), пустые скобки указывают, что у этой процедуры нет входных параметров. Наконец, ключевое слово End Sub обозначает конец подпрограммы. Весь код, выполняемый подпрограммой, находится между этими двумя строками.
Объявление функций выглядит похоже, однако, необходимо добавить тип возвращаемого значения (например, Integer, String и т. д.). Например, функция, которая возвращает значение типа Integer, может выглядеть следующим образом.
Function MyFirstFunction() As IntegerEnd FunctionКлючевое слово As Integer указывает, что эта функция возвращает значение типа Integer. Для возвращения значения из функции используйте ключевое слово Return, как показано в следующем примере.
Function GetTheNumberOne() As Integer Return 1End FunctionЭта функция возвратит число 1.
Практическое задание
Дата добавления: 2015-08-08; просмотров: 830;