Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Процедуру можно определить в нескольких версиях, перегрузив ее, используя одно и то же имя, но другой список параметров для каждой версии. Целью перегрузки является определение нескольких тесно связанных версий процедуры без необходимости различать их по имени.
Дополнительные сведения см. в разделе "Перегрузка процедур".
Определение нескольких версий процедуры
Напишите
SubилиFunctionзаявление для каждой из версий процедуры, которую вы хотите определить. Используйте одно и то же имя процедуры в каждом объявлении.Добавьте ключевое слово
Subперед каждым ключевым словомFunctionили в объявлении. Вы также можете не указывать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 процедуры см. в статье "Практическое руководство. Вызов перегруженной процедуры".
Компиляция кода
Убедитесь, что каждая из перегруженных версий имеет одно и то же имя процедуры, но другой список параметров.