Практическое руководство. Определение различных версий процедуры (Visual Basic)
Можно определить процедуру в нескольких версиях с помощью ее перегрузки, используя одно и то же имя, но разные списки параметров для каждой перегруженной версии. Цель перегрузки заключается в том, чтобы определить несколько взаимосвязанных версий процедуры, не различая их по именам.
Дополнительные сведения см. в разделе Перегрузка процедур (Visual Basic).
Определение различных версий процедуры
Напишите оператор объявления Sub или Function для каждой версии процедуры, которую требуется определить. Используйте одно и то же имя процедуры в каждом объявлении.
В каждом объявлении ключевому слову Sub или Function должно предшествовать ключевое слово Overloads (Visual Basic). В объявлениях можно опускать Overloads, но если оно включено в одном из объявлений, то его необходимо включить во все объявления.
После каждого оператора объявления напишите код для обработки конкретных случаев, для которых код вызова предоставляет аргументы, соответствующие этому списку параметров данной версии процедуры. Необязательно проверять, для каких параметров написан вызывающий код. Visual Basic передает управление соответствующей версии процедуры.
Завершайте каждую процедуру оператором End Sub или End Function.
Пример
В следующем примере определяется процедура Sub для учета транзакции по отношению к балансу клиента. Используется ключевое слово Overloads для определения двух версий процедуры: первая процедура принимает клиента по имени, а другая — по номеру счета.
Overloads Sub post(ByVal custName As String, ByVal amount As Single)
' Insert code to access customer record by customer name.
End Sub
Overloads Sub post(ByVal custAcct As Integer, ByVal amount As Single)
' Insert code to access customer record by account number.
End Sub
Вызывающий код может получить идентификатор клиента как в качестве типа String, так и в качестве типа Integer, а затем использовать тот же вызывающий оператор в обоих случаях.
Сведения о том, как вызывать эти версии процедуры post см. в разделе Практическое руководство. Вызов перегруженной процедуры (Visual Basic).
Компиляция кода
Убедитесь, что все перегруженные версии имеют одно и то же имя процедуры, но различные списки параметров.
См. также
Задачи
Устранение неполадок в процедурах (Visual Basic)
Основные понятия
Параметры и аргументы процедуры (Visual Basic)