Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Można zdefiniować procedurę w wielu wersjach, przeciążając ją, używając tej samej nazwy, ale innej listy parametrów dla każdej wersji. Celem przeciążenia jest zdefiniowanie kilku ściśle powiązanych wersji procedury bez konieczności rozróżniania ich według nazwy.
Aby uzyskać więcej informacji, zobacz Przeciążenie procedury.
Aby zdefiniować wiele wersji procedury
Napisz deklarację
SublubFunctiondla każdej wersji procedury, którą chcesz zdefiniować. Użyj tej samej nazwy procedury w każdej deklaracji.Poprzedź słowo kluczowe
SublubFunctionw każdej deklaracji za pomocą słowa kluczowego Overloads. Opcjonalnie możesz pominąćOverloadsw deklaracjach, ale jeśli uwzględnisz go w którejkolwiek deklaracji, musisz go uwzględnić we wszystkich deklaracjach.Po każdej instrukcji deklaracji napisz kod procedury do obsługi konkretnego przypadku, w którym wywołujący kod dostarcza argumenty pasujące do listy parametrów tej wersji. Nie trzeba testować parametrów dostarczonych przez kod wywołujący. Visual Basic przekazuje kontrolę do pasującej wersji procedury.
W razie potrzeby zakończ każdą wersję procedury za pomocą instrukcji
End SuborEnd Function.
Przykład
W poniższym przykładzie zdefiniowano procedurę Sub zaksięgowania transakcji do salda klienta. Używa Overloads słowa kluczowego , aby zdefiniować dwie wersje procedury, jedną, która akceptuje klienta według nazwy, a drugą według numeru konta.
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
Kod wywołujący może uzyskać identyfikację klienta jako String lub Integer, a następnie użyć tej samej instrukcji wywołania w obu przypadkach.
Aby uzyskać informacje na temat wywoływania tych wersji procedury, zobacz Instrukcje post: wywoływanie procedury przeciążonej.
Kompilowanie kodu
Upewnij się, że każda z przeciążonych wersji ma tę samą nazwę procedury, ale inną listę parametrów.