TypeOf İşleci (Visual Basic)

İfadenin sonucunun çalışma zamanı türünün belirtilen türle uyumlu olup olmadığını denetler.

Sözdizimi

result = TypeOf objectexpression Is typename  
result = TypeOf objectexpression IsNot typename  

Parça

result
Döndürülen. Bir Boolean değer.

objectexpression
Gerekli. Başvuru türü olarak değerlendirilen tüm ifadeler.

typename
Gerekli. Herhangi bir veri türü adı.

Açıklamalar

TypeOf işleci, çalışma zamanı türünün objectexpression ile typenameuyumlu olup olmadığını belirler. Uyumluluk türü kategorisine typenamebağlıdır. Aşağıdaki tabloda uyumluluğun nasıl belirlendiği gösterilmektedir.

Kategori türü typename Uyumluluk ölçütü
Sınıf objectexpression türünde typename veya devralan typename
Yapı objectexpression türünde typename
Arabirim objectexpressiontypename uygulayan veya uygulayan bir sınıftan devralantypename

Çalışma zamanı türü objectexpression uyumluluk ölçütlerini karşılarsa, result olur True. Aksi takdirde, result şeklindedir False. Null ise objectexpression , TypeOf...Is döndürür Falseve ...IsNot döndürür True.

TypeOfher zaman bir ... ifadesi oluşturmak TypeOfiçin anahtar sözcüğüyle Is veya bir ...IsNot ifadesi oluşturmak TypeOfiçin anahtar sözcüğüyle IsNot birlikte kullanılır.Is

Örnek

Aşağıdaki örnekte, iki nesne başvuru değişkeninin çeşitli veri türleriyle tür uyumluluğunu test etmek için ...Is ifadeleri kullanılmaktadırTypeOf.

Dim refInteger As Object = 2
MsgBox("TypeOf Object[Integer] Is Integer? " & TypeOf refInteger Is Integer)
MsgBox("TypeOf Object[Integer] Is Double? " & TypeOf refInteger Is Double)
Dim refForm As Object = New System.Windows.Forms.Form
MsgBox("TypeOf Object[Form] Is Form? " & TypeOf refForm Is System.Windows.Forms.Form)
MsgBox("TypeOf Object[Form] Is Label? " & TypeOf refForm Is System.Windows.Forms.Label)
MsgBox("TypeOf Object[Form] Is Control? " & TypeOf refForm Is System.Windows.Forms.Control)
MsgBox("TypeOf Object[Form] Is IComponent? " & TypeOf refForm Is System.ComponentModel.IComponent)

değişkeninin refInteger çalışma zamanı türü vardır Integer. ile Integer uyumludur ancak ile Doubleuyumlu değildir. değişkeninin refForm çalışma zamanı türü vardır Form. ile uyumludur Form çünkü bu türüdür, Control çünkü Form öğesinden Controldevralır ve IComponentForm öğesini uygulayan IComponentöğesinden Componentdevralır. Ancak, refForm ile Labeluyumlu değildir.

Ayrıca bkz.