Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
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
SubNapište příkaz neboFunctiondeklaraci pro každou verzi procedury, kterou chcete definovat. V každé deklaraci použijte stejný název procedury.Do každé deklarace přidejte před klíčové slovo
SubneboFunctionklíčové slovo Přetížení. Volitelně můžete v deklaracích vynechatOverloads, ale pokud ji zahrnete do některé z deklarací, musíte ji zahrnout do každé deklarace.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á řízení odpovídající verzi procedury.
Podle potřeby ukončete každou verzi procedury pomocí
End Subpříkazu neboEnd Functionpří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 buď jako String, nebo jako Integer, a 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ů.