Sdílet prostřednictvím


Postupy: Deklarace struktury (Visual Basic)

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

  1. 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 Structure  
    
  2. Př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 Structure  
    

    Pole salary v předchozím příkladu je Private, což znamená, že je nepřístupné mimo strukturu, a to i z obsahující třídy. Nicméně, giveRaise procedura je Public, takže ji lze volat z vnějšku struktury. Podobně můžete vyvolat salaryReviewTime událost nepřímo voláním metody v rámci struktury, která ji vyvolá. Například:

    Public Sub TriggerSalaryReview()
        RaiseEvent salaryReviewTime()
    End Sub
    

    To 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, Sub procedur a událostí můžete také definovat konstanty, Function procedury 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.

Viz také