Tür Listesi (Visual Basic)

Belirtir Tür parametreleri için bir Genel programlama öğesi.Birden çok parametre virgüllerle ayrılır.Aşağıda, bir tür parametresi için sözdizimi vardır.

[genericmodifier] typename [ As constraintlist ]

Bölümleri

Terim

Tanım

genericmodifier

İsteğe Bağlı.Yalnızca genel arabirimleri ve temsilciler kullanılabilir.Size bir türünü değişkenle birlikte kullanarak bildirebilirsiniz dışarı anahtar sözcüğünü ya da karşıtı kullanarak içinde anahtar sözcüğü.Bkz: Kovaryans ve Kontravaryans (C# ve Visual Basic)

typename

Gerekli.Type parametresi adı.Sağlanan karşılık gelen türü bağımsız değişkeni tarafından tanımlanan bir türe göre değiştirilmesi için yer tutucu, budur.

constraintlist

İsteğe Bağlı.Sınırlamak için sağladığı veri türü gereksinimleri listesi typename.Birden fazla kısıtlamalar varsa, bunları kuþak imleri içine alın ({ }) ve bunları virgüllerle ayırın.Kısıtlama listesi ile tanıtmak gerekir olarak anahtar sözcüğü.Kullandığınız As listesinin başına yalnızca bir kez.

Notlar

Genel programlama her öğe, en az bir tür parametresi gerçekleştirmeniz gerekir.Belirli bir türü için bir yer tutucu olmayan bir tür parametresi (bir öğesi oluşturulur) istemci kodu ne zaman genel türünde bir örnek oluşturur belirtir.Bir generic sýnýf tanımlamak, yapı, yordam, arabirim veya temsilci.

Genel bir tür tanýmlamak ne zaman hakkında daha fazla bilgi için bkz: Visual Basic'de Genel Türler (Visual Basic).Tür parametre adları hakkında daha fazla bilgi için bkz: Bildirilen Öğe Adları (Visual Basic).

Kurallar

  • Parantez. Türü parametre listesi sağlayın, parantez içine almalısınız ve listesiyle tanıtmak gerekir, , anahtar sözcüğü.Kullandığınız Of listesinin başına yalnızca bir kez.

  • Kısıtlamalar. Bir listesini kısıtlamaları bir türde parametresi aşağıdaki öğelerden herhangi bir bileşimini içerebilir:

    • Arabirim numarası.Sağlanan tür, bu listede her arabirimini uygulamalıdır.

    • En fazla bir sınıfı.Sağlanan tür o sınıfından miras gerekir.

    • New Anahtar sözcüğü.Sağlanan tür genel türünüzü erişebileceği bir parametresiz oluşturucusu göstermek gerekir.Bu tür parametresi bir veya daha çok arabirimler tarafından sınırlamak kullanışlıdır.Arabirimleri uygulayan bir tür mutlaka bir kurucu göstermiyor ve bir kurucu erişim düzeyine bağlı genel tür içindeki kod erişim mümkün olmayabilir.

    • Ya da Class anahtar sözcüğünü ya da Structure anahtar sözcüğü.Class Anahtar sözcüğünü kendisine iletilen herhangi bir tür bağımsız değişkeni, bir başvuru türü, örneğin bir dize, dizi veya temsilci olması veya bir nesneyi oluşturan bir sınıftan gerektirecek şekilde genel bir tür parametresiyle zorlar.Structure Anahtar sözcük örneğin yapısı, numaralandırma veya temel veri tipi kendisine iletilen herhangi bir tür bağımsız değişkeni için bir değer türü olmasını gerektirir için genel bir tür parametresiyle zorlar.Her ikisini birden içeremez Class ve Structure aynı constraintlist.

    Sağlanan tür, dahil her gereksinimi karşılamak gerekir constraintlist.

    Her tür parametresi kısıtlamaları, diğer tür parametreleri ile ilgili bazı sınırlamalar bağımsızdır.

Davranış

  • Derleme zamanı değiştirme. Genel programlama öğesinden oluşturulmuş türü oluşturduğunuzda, her tür parametresi için tanımlı bir türü saðlanýr.Visual Basic derleyici her geçtiği için sağlanan bu tür değiştirir typename genel öğesi içinde.

  • Devamsızlık, sınırlamalar. Herhangi bir tür parametresi kısıtlamaları belirtmezseniz, kodunuzu işlemlerin ve üyeleri tarafından desteklenen sınırlı Nesne Veri Türü bu tür parametresi için.

Örnek

Aşağıdaki örnek, sözlüğe yeni bir giriş eklemek için bir iskelet işlevi de dahil olmak üzere, bir genel sözlük sınıfın iskelet tanımını gösterir.

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

Çünkü dictionary olan genel, kullandığı kod nesneleri çeşitli, her aynı işlevselliğe sahip, ancak farklı bir veri türüne göre davranan oluşturabilirsiniz.Aşağıdaki örnek oluşturur kod satırını gösterir bir dictionary ile nesne String girişleri ve Integer anahtarları.

Dim dictInt As New dictionary(Of String, Integer)

Aşağıdaki örnek, önceki örnekte tarafından üretilen eşdeğer iskelet tanımı gösterilmektedir.

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

Ayrıca bkz.

Görevler

Nasıl yapılır: Genel Bir Sınıf Kullanma (Visual Basic)

Başvuru

Of Tümcesi (Visual Basic)

New İşleci (Visual Basic)

Nesne Veri Türü

Function Deyimi (Visual Basic)

Structure Yapısı

Sub Deyimi (Visual Basic)

In (Genel Değiştirici) (Visual Basic)

Out (Genel Değiştirici) (Visual Basic)

Kavramlar

Visual Basic'de Erişim Düzeyleri

Diğer Kaynaklar

Kovaryans ve Kontravaryans (C# ve Visual Basic)