Rozdíly mezi vlastnostmi a proměnnými v jazyce Visual Basic
Proměnné i vlastnosti představují hodnoty, ke kterým máte přístup. Existují však rozdíly v úložišti a implementaci.
Proměnné
Proměnná odpovídá přímo umístění paměti. Proměnnou definujete pomocí jediného příkazu deklarace. Proměnnou může být místní proměnná definovaná uvnitř procedury a dostupná pouze v rámci této procedury, nebo může být členovou proměnnou definovanou v modulu, třídě nebo struktuře, ale ne uvnitř žádné procedury. Členské proměnné se také říká pole.
Vlastnosti
Vlastnost je datový prvek definovaný v modulu, třídě nebo struktuře. Definujete vlastnost s blokem kódu mezi příkazy Property
a End Property
příkazy. Blok kódu obsahuje proceduru Get
, proceduru Set
nebo obojí. Tyto postupy se nazývají procedury vlastností nebo přístupové objekty vlastností. Kromě načtení nebo uložení hodnoty vlastnosti mohou také provádět vlastní akce, jako je například aktualizace přístupového čítače.
Differences
Následující tabulka uvádí některé důležité rozdíly mezi proměnnými a vlastnostmi.
Point of difference | Proměnná | Vlastnost |
---|---|---|
Deklarace | Příkaz Single declaration | Řada příkazů v bloku kódu |
Implementace | Jedno umístění úložiště | Spustitelný kód (procedury vlastností) |
Úložiště | Přímo přidružená k hodnotě proměnné | Obvykle má interní úložiště, které není k dispozici mimo vlastnost obsahující třídu nebo modul. Hodnota vlastnosti může nebo nemusí existovat jako uložený prvek 1. |
Spustitelný kód | Nic | Musí mít alespoň jeden postup. |
Přístup pro čtení a zápis | Čtení/zápis nebo jen pro čtení | Čtení/zápis, jen pro čtení nebo jen pro zápis |
Vlastní akce (kromě přijetí nebo vrácení hodnoty) | Není možné | Lze provést jako součást nastavení nebo načtení hodnoty vlastnosti. |
1 Na rozdíl od proměnné nemusí hodnota vlastnosti přímo odpovídat jedné položce úložiště. Úložiště může být rozdělené na části pro usnadnění nebo zabezpečení nebo může být hodnota uložena v šifrovaném formátu. V těchto případech by procedura Get
sestavovala části nebo dešifrovala uloženou hodnotu a procedura Set
by novou hodnotu zašifrovala nebo rozdělila do základního úložiště. Hodnota vlastnosti může být dočasné, například čas dne, v takovém případě Get
by se postup vypočítal při běhu při každém přístupu k vlastnosti.
Viz také
- Procedury vlastnosti
- Parametry a argumenty procedury
- Příkaz Property
- Příkaz Dim
- Postupy: Vytvoření vlastnosti
- Postupy: Deklarace vlastnosti se smíšenými úrovněmi přístupu
- Postupy: Volání procedury vlastnosti
- Postupy: Deklarace a volání výchozí vlastnosti v jazyce Visual Basic
- Postupy: Vložení hodnoty do vlastnosti
- Postupy: Získání hodnoty z vlastnosti