Aracılığıyla paylaş


TryCast İşleci (Visual Basic)

Bir özel durum olmayan bir türü dönüştürme işlemi tanıtır.

Notlar

Denenen bir dönüştürme başarısız olursa, CType ve DirectCast her ikisi de durum bir InvalidCastException hata.Bu durum, uygulamanızın performansını olumsuz yönde etkileyebilir.TryCastdöner Nothing (Visual Basic), olası bir özel durum işlemek yerine, yalnızca karşı döndürülen sonuç test böylece Nothing.

Kullandığınız TryCast anahtar sözcüğünü kullanarak aynı şekilde CType İşlevi (Visual Basic) ve DirectCast İşleci (Visual Basic) anahtar sözcüğü.İlk bağımsız değişken ve ikinci bağımsız değişken olarak dönüştürmek bir türü olarak bir deyim girin.TryCastYalnızca sınıflar ve arabirimleri gibi baþvuru türleri üzerinde çalışır.Devralma veya uygulama bir ilişki iki türünden gerekir.Bu, bir tür gerekir devralmıyor veya diğer uygulamak anlamına gelir.

Hataları ve başarısızlıkları

TryCastdevralma veya uygulama bir ilişkisi olduğunu algılarsa, bir derleyici hatası oluşturur.Ancak, derleyici hatası yetersizliği başarılı bir dönüşüm garanti etmez.İstenen Dönüşüm daraltmaya, çalışma zamanında başarısız olabilir.Bu durumda, TryCast döndüren Nothing (Visual Basic).

Dönüştürme anahtar sözcükler

Anahtar sözcükleri yazın dönüştürme karşılaştırmasını aşağıdaki gibidir.

Anahtar Sözcük

Veri türleri

Bağımsız değişken ilişkisi

Çalışma zamanı hatası

CType İşlevi (Visual Basic)

Tüm veri türleri

İki veri türleri arasında dönüştürme daraltmayı veya daraltmayı tanımlanmalıdır

YaratmazInvalidCastException

DirectCast İşleci (Visual Basic)

Tüm veri türleri

Bir tür devralmıyor veya diğer tür uygulamak

YaratmazInvalidCastException

TryCast

Başvuru tipleri

Bir tür devralmıyor veya diğer tür uygulamak

DöndürürNothing (Visual Basic)

Örnek

Aşağıdaki örnek, nasıl kullanılacağını gösterir TryCast.

Function PrintTypeCode(ByVal obj As Object) As String 
    Dim objAsConvertible As IConvertible = TryCast(obj, IConvertible)
    If objAsConvertible Is Nothing Then 
        Return obj.ToString() & " does not implement IConvertible" 
    Else 
        Return "Type code is " & objAsConvertible.GetTypeCode()
    End If 
End Function

Ayrıca bkz.

Kavramlar

Genişletme ve Daraltma Dönüşümleri (Visual Basic)

Örtük ve Açık Dönüştürmeler (Visual Basic)