Поделиться через


Практическое руководство. Создание процедуры

Обновлен: Ноябрь 2007

Процедура заключается между начальным оператором объявления (Sub или Function) и конечным оператором объявления(End Sub или End Function). Весь код процедуры содержится между этими операторами.

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

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

Создание процедуры, не возвращающей значения

  1. Вне любых других процедур используйте оператор Sub, за которым следует оператор End Sub.

  2. В операторе Sub введите ключевое слово Sub с именем процедуры, и затем список параметров в круглых скобках.

  3. Поместите операторы кода процедуры между оператором Sub и End Sub.

Создание процедуры, возвращающей значение

  1. Вне любых других процедур используйте оператор Function, за которым следует оператор End Function.

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

  3. Поместите операторы кода процедуры между оператором Function и End Function.

  4. Оператор Return используется для возврата значения в вызывающий код.

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

  1. Убедитесь, что новая процедура определена там, где она доступна для старого кода.

  2. В старом блоке повторяющегося кода замените операторы, которые выполняют повторяющуюся задачу, одним оператором, вызывающим процедуры Sub или Function.

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

Пример

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

Function hypotenuse(ByVal side1 As Single, ByVal side2 As Single) As Single
    Return Math.Sqrt((side1 ^ 2) + (side2 ^ 2))
End Function

См. также

Задачи

Практическое руководство. Разбиение больших частей кода на более простые

Основные понятия

Процедуры в Visual Basic

Процедуры Sub

Процедуры Function

Процедуры свойств

Процедуры операторов

Параметры и аргументы процедуры

Рекурсивные процедуры

Перегрузка процедур

Другие ресурсы

Объектно-ориентированное программирование в Visual Basic