Sdílet prostřednictvím


Postupy: Definice více verzí procedury (Visual Basic)

Proceduru můžete definovat ve více verzích tak, že ji přetížíte pomocí stejného názvu, ale jiného seznamu parametrů pro každou verzi. Účelem přetížení je definovat několik úzce souvisejících verzí procedury, aniž byste je museli odlišit podle názvu.

Další informace naleznete v tématu Přetížení procedury.

Definování více verzí procedury

  1. Sub Napište příkaz nebo Function deklaraci pro každou verzi procedury, kterou chcete definovat. V každé deklaraci použijte stejný název procedury.

  2. Sub Před klíčové slovo nebo Function klíčové slovo v každé deklaraci pomocí klíčového slova Přetížení. Volitelně můžete v deklaracích vynechat Overloads , ale pokud ji zahrnete do některé z deklarací, musíte ji zahrnout do každé deklarace.

  3. Za každým příkazem deklarace napište kód procedury pro zpracování konkrétního případu, kdy volající kód poskytuje argumenty odpovídající seznamu parametrů dané verze. Nemusíte testovat, pro které parametry volající kód zadal. Visual Basic předá ovládací prvek odpovídající verzi procedury.

  4. Podle potřeby ukončete každou verzi procedury pomocí End Sub příkazu nebo End Function příkazu.

Příklad

Následující příklad definuje Sub postup zaúčtování transakce vůči zůstatku zákazníka. Pomocí klíčového Overloads slova definuje dvě verze postupu, jednu, která přijímá zákazníka jménem a druhou číslem účtu.

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

Volající kód může získat identifikaci zákazníka jako zákazníka String nebo jako Integera pak použít stejný volající příkaz v obou případech.

Informace o volání těchto verzí post procedury naleznete v tématu Postupy: Volání přetížené procedury.

Kompilace kódu

Ujistěte se, že každá z vašich přetížených verzí má stejný název procedury, ale jiný seznam parametrů.

Viz také