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.
Deklaraci struktury zahájíte příkazem Structurea ukončíte ho příkazem End Structure. Mezi těmito dvěma příkazy musíte deklarovat alespoň jeden prvek . Prvky můžou být libovolného datového typu, ale alespoň jeden musí být buď nesdílenou proměnnou, nebo nesdílenou, neinstanční událostí.
V deklaraci struktury nelze inicializovat žádné prvky struktury. Když deklarujete proměnnou typu struktury, přiřadíte k prvkům hodnoty tak, že k nim přistupujete prostřednictvím proměnné.
Diskuzi o rozdílech mezi strukturami a třídami najdete v tématu Struktury a třídy.
Pro demonstrační účely zvažte situaci, kdy chcete sledovat jméno zaměstnance, telefonní linku a plat. Struktura umožňuje tuto akci provést v jedné proměnné.
Deklarace struktury
Vytvořte počáteční a koncové příkazy pro strukturu.
Úroveň přístupu struktury můžete zadat pomocí klíčového slova Veřejné, Chráněné, Přítelnebo Soukromé nebo můžete povolit výchozí
Public.Private Structure employee End StructurePřidejte prvky do těla struktury.
Struktura musí mít alespoň jeden prvek. Musíte deklarovat každý prvek a zadat pro něj úroveň přístupu. Pokud použijete příkaz Dim bez klíčových slov, přístupnost se nastaví na výchozí hodnotu
Public.Private Structure employee Public givenName As String Public familyName As String Public phoneExtension As Long Private salary As Decimal Public Sub giveRaise(raise As Double) salary *= raise End Sub Public Event salaryReviewTime() ' Method to raise the event Public Sub TriggerSalaryReview() RaiseEvent salaryReviewTime() End Sub End StructurePole
salaryv předchozím příkladu jePrivate, což znamená, že je nepřístupné mimo strukturu, a to i z obsahující třídy. Nicméně,giveRaiseprocedura jePublic, takže ji lze volat z vnějšku struktury. Podobně můžete vyvolatsalaryReviewTimeudálost nepřímo voláním metody v rámci struktury, která ji vyvolá. Například:Public Sub TriggerSalaryReview() RaiseEvent salaryReviewTime() End SubTo vám umožní řídit, jak a kdy je událost vyvolána, a zároveň udržovat událost nepřístupnou přímo před strukturou.
Kromě proměnných,
Subprocedur a událostí můžete také definovat konstanty,Functionprocedury a vlastnosti ve struktuře. Jako výchozí vlastnost můžete určit maximálně jednu vlastnost, pokud má alespoň jeden argument. Událost můžete zpracovat pomocí procedury SharedSub. Další informace naleznete v tématu Postupy: Deklarace a volání výchozí vlastnosti v jazyce Visual Basic.