Tablica konwersji (Visual Basic)
Typ tablicy można konwertować na typ tablicy różnych, pod warunkiem spełnienia następujących warunków:
Równej rangi. Rangę dwóch tablic muszą być takie same, to znaczy musi mieć taką samą liczbę wymiarów.Jednakże nie długości odpowiednie wymiary muszą być takie same.
Typ elementu danych. Typy danych elementów obydwie tablice muszą być typu odwołania.Nie można przekonwertować Integer tablicy do Long array, a nawet z Object tablicy, ponieważ co najmniej jedną wartość typu jest zaangażowana.Aby uzyskać więcej informacji, zobacz Typy wartości i typy odwołań.
Wymienialności. Konwersja, albo rozszerzenie lub zwężenie, musi być możliwe między rodzajami element dwóch tablic.Przykład nie powiedzie się wymóg ten jest próba konwersji między String tablicy i tablicy klasy pochodzące z System.Attribute.Te dwa typy mają nic wspólnego i bez konwersji dowolnego rodzaju istnieje między nimi.
Konwersja typu jednej tablicy do innego jest poszerzenie lub zwężenie w zależności od tego, czy rozszerzenie lub zwężenie konwersji odpowiednich elementów.Aby uzyskać więcej informacji, zobacz Rozszerzanie i zawężanie konwersji (Visual Basic).
Konwersja na tablicę obiektów
Kiedy zadeklarować Object jest tablica bez inicjowanie ją jej typ elementu Object tak długo, jak długo pozostaje niezainicjowany.Po ustawieniu do tablicy określonej klasy przejmuje typu klasy.Jednak jego typ podstawowy jest nadal Object, i można następnie ustawić ją na innym tablicy klasy niepowiązanych.Ponieważ wszystkie klasy pochodzić od Object, z dowolnej klasy można zmienić typu elementu tablicy, do innej klasy.
W poniższym przykładzie, konwersja nie istnieje między typami student i String, ale oba wynikają z Object, dzięki czemu wszystkie przydziały są prawidłowe.
' Assume student has already been defined as a class.
Dim testArray() As Object
' testArray is still an Object array at this point.
Dim names() As String = New String(3) {"Name0", "Name1", "Name2", "Name3"}
testArray = New student(3) {}
' testArray is now of type student().
testArray = names
' testArray is now a String array.
Typ podstawowy w tablicy
Przy deklarowaniu pierwotnie tablicę z określonej klasy, jego typ podstawowy element jest tej klasy.Jeśli można następnie ustawić go do tablicy innej klasy, musi być konwersji między dwiema klasami.
W poniższym przykładzie students jest student tablicy.Ponieważ konwersja nie występuje między String i student, ostatniego wyciągu nie powiedzie się.
Dim students() As student
Dim names() As String = New String(3) {"Name0", "Name1", "Name2", "Name3"}
students = New Student(3) {}
' The following statement fails at compile time.
students = names
Zobacz też
Zadania
Jak: konwertowanie obiektu na inny typ w języku Visual Basic
Informacje
Podsumowanie typów danych (Visual Basic)
Funkcje konwersji typu (Visual Basic)
Koncepcje
Typy danych języka Visual Basic
Konwersje niejawne i jawne (Visual Basic)
Konwersje między ciągi i innych typów (Visual Basic)