Пользовательская функция
Рассмотрим пример создания и использования функции, которая выполняет очень простую задачу: возводит переданное ей число во вторую степень.
Функция, реализующая эту задачу, выглядит так (листинг 11.):
Public Function Square (num_One As Double) As Double
Square = num_One ^ 2
End Function
Листинг 11. Пользовательская функция
Объявление функции очень похоже на объявление процедуры. Здесь мы используем модификатор доступности Public, дающий доступ к функции из всех модулей. Ключевое слово Function означает, что мы объявляем функцию. Следом за ним, в скобках, идет объявление параметров, которые мы можем передать функции. В нашем случае это - одна переменная num_One типа Double. После объявления имени и параметров функции следует объявление типа самой функции, или, точнее - типа возвращаемого функцией значения. В нашем случае с помощью конструкции As Double мы задали тип функции Double. При объявлении функции можно не указывать тип - тогда он автоматически будет установлен в Variant.
Последняя строка объявления функции - End Function, означает конец функции. Как и в случае с процедурой, внутри тела функции можно разместить операторы, необходимые для выполнения задачи. Однако, здесь есть одна очень важная особенность. После того, как найдено значение, которое функция должна возвратить, в тексте кода функции нужно присвоить это значение переменной, которая имеет то же имя, что и функция. В нашем случае, при имени функции Square это присвоение выглядит как Square = num_One ^ 2.
|
|
Для испытания функции добавим в документ еще одну кнопку - cmd_UserCalc, подписанную как Функция с таким кодом (листинг 12.):
Private Sub cmd_UserCalc_Click()
Dim num_Res As Double
Dim num_Input As Double
num_Input = CDbl(InputBox("Введите число"))
num_Res = Square (num_Input)
MsgBox (Str(num_Input) + " во 2-й степени = " + _
Str(num_Res))
End Sub
Листинг 12. Работа с пользовательской функцией
Как видите, здесь мы работаем с пользовательской функцией точно так же, как работали бы с одной из встроенных функций. Для наглядности мы использовали переменную, в которую записываем значение, возвращаемое функцией.
Дата добавления: 2016-01-06; просмотров: 12; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!