Výpis struktury
Deklaruje název struktury a zavádí definice proměnné, vlastnosti, události a postupy, které zahrnuje strukturu.
[ <attributelist> ] [ accessmodifier ] [ Shadows ] [ Partial ] _
Structure name [ ( Of typelist ) ]
[ Implements interfacenames ]
datamemberdeclarations
[ methodmemberdeclarations ]
End Structure
Části
Termín |
Definice |
attributelist |
Nepovinné.Viz seznam atributů. |
accessmodifier |
Nepovinné.Může být jeden z následujících: Viz téma Úrovně přístupu v jazyce Visual Basic. |
Shadows |
Nepovinné.Viz stíny. |
Partial |
Nepovinné.Označuje částečnou definici struktury.Viz téma Částečná (Visual Basic). |
name |
Povinné.Název této struktury.Viz téma Deklarovaný názvy prvků (Visual Basic). |
Of |
Nepovinné.Určuje, že toto je obecná struktura. |
typelist |
Požadováno, pokud použijete z klíčové slovo.Seznam parametrů typu pro tato struktura.Viz seznamu Typ. |
Implements |
Nepovinné.Označuje, že implementuje tuto strukturu členy jedno nebo více rozhraní.Viz téma Implementuje prohlášení. |
interfacenames |
Požadováno, pokud použijete Implements prohlášení.Názvy rozhraní, který implementuje tuto strukturu. |
datamemberdeclarations |
Povinné.Jeden nebo více Const, Dim, Enum, nebo Event prohlášení neplatnosti datové členy struktury. |
methodmemberdeclarations |
Nepovinné.Nula nebo více prohlášení o Function, Operator, Property, nebo Sub postupy, které slouží jako Metoda členy struktury. |
End Structure |
Povinné.Ukončí Structure definice. |
Poznámky
Structure Příkaz definuje hodnotu složený typ, který můžete upravit.A struktury je generalizace typ definovaný uživatelem (UDT) předchozí verze jazyka Visual Basic.Další informace naleznete v tématu Struktury (Visual Basic).
Struktury podporují mnoho stejných funkcí jako třídy.Například struktur může mít vlastnosti a postupy implementují rozhraní a jejich možné Parametrizovaná konstruktory.Existují významné rozdíly mezi strukturami a třídy v oblastech, jako je dědičnost, prohlášení a využití.Také třídy jsou typy odkazů a struktury jsou typy hodnot.Další informace naleznete v tématu Struktury a tříd (Visual Basic).
Můžete použít Structure pouze na úrovni oboru názvů nebo modulu.To znamená prohlášení kontextu struktury musí být zdrojový soubor, obor názvů, třídu, strukturu, modulu nebo rozhraní a nemůže být postup nebo blokovat.Další informace naleznete v tématu Prohlášení kontextů a úrovně přístupu výchozí (Visual Basic).
Výchozí struktury Přítel (Visual Basic) přístup.Můžete nastavit jejich úrovně přístupu s modifikátory přístupu.Další informace naleznete v tématu Úrovně přístupu v jazyce Visual Basic.
Pravidla
Vnoření. Můžete definovat jeden struktury v rámci jiného.Vnější část konstrukce, která se nazývá obsahující strukturu, se nazývá vnitřní strukturu vnořené struktury.Nelze však přístup členy vnořené struktury obsahující strukturou.Místo toho je třeba deklarovat proměnné datového typu vnořené struktury.
Deklarace člena. Každý člen struktury musíte deklarovat.Struktura člen nemůže být chráněné nebo Protected Friend protože nic dědit strukturu.Strukturu samotného, však může být Protected nebo Protected Friend.
Alespoň jeden noncustom sdíleném proměnné nebo sdíleném, musíte deklarovat událostí ve struktuře.I když některé z nich jsou sdíleném, nemůže mít pouze konstanty, vlastnosti a postupy.
Inicializace. Nelze inicializovat hodnotu člena sdíleném datové struktury jako součást své prohlášení.Musíte inicializovat datový člen s parametry konstruktoru struktury nebo přiřadit hodnotu člena po vytvoření instance strukturu.
Dědičnost. Struktury nemohou dědit z libovolného typu než ValueType, z dědí všechny struktury.Zejména jeden struktury nemůže dědit od druhého.
Nelze použít Dědí prohlášení v definici struktury dokonce určit ValueType.
Implementace. Pokud struktura používá Implementuje prohlášení, musí implementovat každý člen definované pro každé rozhraní v interfacenames.
Výchozí vlastnost. Strukturu můžete určit maximálně jednu vlastnost jako jeho výchozí vlastnost, použití Výchozí (Visual Basic) modifikátor.Další informace naleznete v tématu Výchozí (Visual Basic).
Chování
Úroveň přístupu. V rámci struktury můžete deklarovat každý člen s vlastní úroveň přístupu.Všechny členy struktury výchozí Veřejné (Visual Basic) přístup.Všimněte si, že pokud strukturu samotného omezenější úrovni přístupu, to automaticky omezuje přístup k jeho členů i v případě, že úprava jejich úrovně přístupu s modifikátory přístupu.
Obor. Struktura je v oboru v celém jeho obsahující obor názvů, třídu, strukturu nebo modul.
Rozsah každého člena struktura je celá struktura.
Doba života. Strukturu samotného nemá životnost.Každá instance této struktury spíše má životnost nezávisle na ostatních instancí.
Životnost instance začne, když je vytvořené Nový operátor (Visual Basic) klauzule.Konce životnosti obsahující proměnné končí.
Nelze prodloužit životnost konstrukce instance.Modul poskytuje přibližnou funkce statické struktury.Další informace naleznete v tématu Příkaz Module.
Struktura členové mají životnost v závislosti na tom, jak a kde jsou deklarovány.Další informace naleznete v části "Doba trvání" v Příkaz class (Visual Basic).
Kvalifikace. Kód mimo strukturu musí mít nárok na jméno člena s názvem této struktury.
Pokud kód uvnitř vnořené struktury neúplných odkaz na programovací element, jazyka Visual Basic hledá pro prvek vnořené struktury, pak v jeho obsahující strukturu a podobně nejvzdálenější obsahující prvek.Další informace naleznete v tématu Odkazy na prvky deklarované (Visual Basic).
Spotřeba paměti. Stejně jako u všech složených datových typů je nelze vypočítat bezpečně spotřebu paměti celkové struktury sečtením přidělení úložiště nominální jeho členů.Kromě toho nelze předpokládat bezpečně pořadí úložiště v paměti je stejné jako vaše objednávka prohlášení.Pokud potřebujete řídit úložiště rozložení struktury, můžete použít StructLayoutAttribute atributu na Structure prohlášení.
Příklad
V následujícím příkladu Structure příkaz definovat sadu souvisejících dat. pro zaměstnance.Znázorňuje použití Public, Friend, a Private členů podle citlivosti datové položky.Zobrazuje také postup, vlastnost a událost členů.
Public Structure employee
' Public members, accessible from throughout declaration region.
Public firstName As String
Public middleName As String
Public lastName As String
' Friend members, accessible from anywhere within the same assembly.
Friend employeeNumber As Integer
Friend workPhone As Long
' Private members, accessible only from within the structure itself.
Private homePhone As Long
Private level As Integer
Private salary As Double
Private bonus As Double
' Procedure member, which can access structure's private members.
Friend Sub calculateBonus(ByVal rate As Single)
bonus = salary * CDbl(rate)
End Sub
' Property member to return employee's eligibility.
Friend ReadOnly Property eligible() As Boolean
Get
Return level >= 25
End Get
End Property
' Event member, raised when business phone number has changed.
Public Event changedWorkPhone(ByVal newPhone As Long)
End Structure
Viz také
Referenční dokumentace
Rozhraní prohlášení (Visual Basic)