物件變數包含儲存在其他地方的數據指標。 該數據類型可以在運行時間變更。 您可以隨時使用 GetTypeCode 方法來判斷目前的運行時間類型,或 TypeOf 運算符 ,以找出目前的運行時間類型是否與指定的類型相容。
若要判斷物件變數目前參考的確切類型
在物件變數上呼叫 GetType 方法來擷取 System.Type 物件。
Dim myObject As Object myObject.GetType()在 類別上 System.Type ,呼叫共用方法 GetTypeCode 以擷取 TypeCode 物件的型別列舉值。
Dim myObject As Object Dim datTyp As Integer = Type.GetTypeCode(myObject.GetType()) MsgBox("myObject currently has type code " & CStr(datTyp))您可以針對感興趣的列舉成員測試 TypeCode 列舉值,例如
Double。
判斷物件變數的類型是否與指定的類型相容
使用
TypeOf運算子結合Is運算子來測試具有TypeOf...Is表示式的物件。If TypeOf objA Is System.Windows.Forms.Control Then MsgBox("objA is compatible with the Control class") End If如果物件的執行時間類型與指定的類型相容,則
TypeOf...Is表示式會True傳回 。相容性的準則取決於指定的類型是否為類別、結構或介面。 一般而言,如果物件的類型與指定的類型相同、繼承自指定的類型,或實作指定的類型,則該類型是相容的。 如需詳細資訊,請參閱 TypeOf 運算符。
編譯程式碼
請注意,指定的型別不能是變數或表達式。 它必須是已定義型別的名稱,例如類別、結構或介面。 這包括 內建型別,例如 Integer 和 String。