Typ listy (Visual Basic)
Określa Parametry typu dla generic element programowania.Wiele parametrów są rozdzielane przecinkami.Oto składnia dla jednego typu parametru.
[genericmodifier] typename [ As constraintlist ]
Części
Termin |
Definicja |
genericmodifier |
Opcjonalne.Można tylko w interfejsach rodzajowy i delegatów.Można zadeklarować typu kowariantnego za pomocą z słowa kluczowego lub kontrawariantnego za pomocą w słowa kluczowego.See Kowariancja i Kontrawariancja (C# i Visual Basic). |
typename |
Wymagane.Nazwa parametru typu.To jest symbol zastępczy, zastępuje się określonego typu, dostarczonych przez odpowiadającego mu typu argumentu. |
constraintlist |
Opcjonalne.Wykaz wymagań, które ograniczyć typ danych, który może być dostarczone dla typename.Jeśli masz wiele ograniczeń, należy je ująć w nawiasy klamrowe ({ }) i oddzielić przecinkami.Musisz wprowadzić listy ograniczenie z jako słowa kluczowego.Za pomocą As tylko raz, na początku listy. |
Uwagi
Każdy element rodzajowy dla programowania musi mieć co najmniej jednego parametru typu.Parametr typu jest symbolem zastępczym dla określonego typu ( skonstruowane elementu) kod klienta określa, gdy tworzy wystąpienie typu rodzajowego.Można zdefiniować klasą rodzajową, struktury, interfejs procedury lub delegowanie.
Aby uzyskać więcej informacji o tym, kiedy zdefiniować typ rodzajowy, zobacz Typy rodzajowe w języku Visual Basic (VB).Aby uzyskać więcej informacji dotyczących nazw parametrów typu, zobacz Nazwy elementów deklarowanej (Visual Basic).
Zasady
Nawiasy. Jeśli dostaw lista parametrów typu, należy ją ująć w nawiasy i należy wprowadzić na liście z z słowa kluczowego.Za pomocą Of tylko raz, na początku listy.
Ograniczenia. Lista ograniczenia w danym typie parametr może zawierać następujące elementy w dowolnej kombinacji:
Dowolna liczba interfejsów.Dostarczony typ musi implementować każdego interfejsu na tej liście.
Co najwyżej jedną klasę.Dostarczony typ musi dziedziczyć po tej klasy.
New Słowa kluczowego.Dostarczony typ musi ujawniać konstruktora bez parametrów, którego dostęp użytkownika typu rodzajowego.Jest to przydatne, jeśli w przypadku ograniczenia parametru typu przez jeden lub więcej interfejsów.Typ, który implementuje interfejsy nie narażać konstruktora i w zależności od poziomu dostępu Konstruktora kodu w ramach typu rodzajowego nie może być uzyskać do niego dostępu.
Albo Class słowa kluczowego lub Structure słowa kluczowego.Class Słowa kluczowego ogranicza wymagają, aby którykolwiek z argumentów typu przekazanych do niego być typ odwołania, na przykład ciąg, tablica lub pełnomocnika, lub obiekt utworzony z klasy parametr typu rodzajowego.Structure Słowa kluczowego ogranicza parametr typu rodzajowego wymaganie, że którykolwiek z argumentów typu przekazanych do niego być typ wartości, na przykład wpisz struktury, wyliczenia lub dane podstawowe.Nie może zawierać zarówno Class i Structure w tym samym constraintlist.
Dostarczony typ musi spełniać wymóg, co zostanie uwzględniony w constraintlist.
Ograniczenia dla każdego parametru type są niezależne od ograniczeń na inne parametry typu.
Zachowanie
Zastąpienie w czasie kompilacji. Po utworzeniu typu skonstruowane z rodzajowy elementu programowania dostaw są zdefiniowane typu dla każdego parametru typu.Kompilator Visual Basic substytuty tego typu podane dla każdego wystąpienia typename w elemencie rodzajowy.
Brak ograniczeń. Jeśli nie określisz wszelkie ograniczenia parametru typu kodu jest ograniczona do operacji i obsługiwana przez członków Typ danych Object dla tego parametru typu.
Przykład
Poniższy przykład pokazuje szkielet definicji klasy dictionary rodzajowy, włączając szkielet funkcji, aby dodać nowy wpis do słownika.
Public Class dictionary(Of entryType, keyType As {IComparable, IFormattable, New})
Public Sub add(ByVal et As entryType, ByVal kt As keyType)
Dim dk As keyType
If kt.CompareTo(dk) = 0 Then
End If
End Sub
End Class
Ponieważ dictionary jest rodzajowy, kod, który korzysta z niego można tworzyć wiele obiektów, każdego posiadające tę samą funkcję, ale działające na różne typy danych.W poniższym przykładzie pokazano wiersz kodu tworzy dictionary obiekt z String wpisów i Integer klawiszy.
Dim dictInt As New dictionary(Of String, Integer)
Poniższy przykład pokazuje równoważne definicji szkielet generowanych przez w poprzednim przykładzie.
Public Class dictionary
Public Sub add(ByVal et As String, ByVal kt As Integer)
Dim dk As Integer
If kt.CompareTo(dk) = 0 Then
End If
End Sub
End Class
Zobacz też
Zadania
Jak: Użyj klasą rodzajową (Visual Basic)
Informacje
Instrukcji funkcyjnej (Visual Basic)
W (Generic modyfikator) (Visual Basic)
Out (Generic modyfikator) (Visual Basic)
Koncepcje
Poziomy dostępu w programie Visual Basic