Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W Visual Basic istnieją dwa rodzaje typów: typy odwołań i typy wartości. Zmienne typów referencyjnych przechowują odwołania do ich danych (obiektów), podczas gdy zmienne typów wartości zawierają dane bezpośrednio. W przypadku typów referencyjnych dwie zmienne mogą odwoływać się do jednego obiektu, a więc operacje wykonane na jednej zmiennych mogą mieć wpływ na obiekt, do którego odwołuje się druga zmienna. W przypadku typów wartości każda zmienna ma własną kopię danych i nie jest możliwe, aby operacje na jednej zmiennej wpływały na drugą (z wyjątkiem w przypadku modyfikatora ByRef na parametrach).
Typy wartości
Typ danych jest typem wartości , jeśli przechowuje dane w ramach własnej alokacji pamięci. Typy wartości obejmują następujące elementy:
Wszystkie typy danych liczbowych
Boolean,ChariDateWszystkie struktury, nawet jeśli ich składowe są typami referencyjnymi
Wyliczenia, ponieważ ich typ bazowy jest zawsze
SByte,Short,Integer,Long,Byte,UShort,UIntegerlubULong
Każda struktura jest typem wartości, nawet jeśli zawiera składowe typu odwołania. Z tego powodu typy wartości, takie jak Char i Integer , są implementowane przez struktury .NET Framework.
Typ wartości można zadeklarować przy użyciu zastrzeżonego słowa kluczowego, na przykład Decimal. Możesz również użyć słowa kluczowego New , aby zainicjować typ wartości. Jest to szczególnie przydatne, jeśli typ ma konstruktor, który przyjmuje parametry. Przykładem tego jest konstruktor Decimal(Int32, Int32, Int32, Boolean, Byte), który tworzy nową wartość Decimal z podanych części.
Typy odwołań
Typ odwołania przechowuje odwołanie do danych. Typy referencyjne obejmują następujące elementy:
StringWszystkie tablice, nawet jeśli ich elementy są typami wartości
Typy klas, takie jak Form
Delegatów
Klasa jest typem referencyjnym. Należy pamiętać, że każda tablica jest typem odwołania, nawet jeśli jej składowe są typami wartości.
Ponieważ każdy typ odwołania reprezentuje podstawową klasę .NET Framework, podczas inicjowania należy użyć słowa kluczowego Nowy operator . Poniższa instrukcja inicjuje tablicę.
Dim totals() As Single = New Single(8) {}
Elementy, które nie są typami
Następujące elementy programowania nie kwalifikują się jako typy, ponieważ nie można określić żadnego z nich jako typu danych dla zadeklarowanego elementu:
Przestrzenie nazw
Moduły
Zdarzenia
Właściwości i procedury
Zmienne, stałe i pola
Praca z typem danych obiektu
Typ odwołania lub typ wartości można przypisać do zmiennej Object typu danych. Zmienna Object zawsze przechowuje odwołanie do danych, nigdy nie zawiera samych danych. Jeśli jednak przypiszesz typ wartości do zmiennej Object , zachowuje się tak, jakby przechowywał własne dane. Aby uzyskać więcej informacji, zobacz Object Data Type (Typ danych obiektu).
Możesz dowiedzieć się, czy zmienna Object działa jako typ odwołania, czy typ wartości, przekazując ją do IsReference metody w Information klasie Microsoft.VisualBasic przestrzeni nazw.
Information.IsReference Zwraca True wartość , jeśli zawartość zmiennej Object reprezentuje typ odwołania.
Zobacz także
- Typy wartości dopuszczające null
- Konwersje Typów w Visual Basicu
- Struktura stwierdzenie
- Skuteczne stosowanie typów danych
- Typ danych obiektu
- Data types (Typy danych)