共用方式為


如何:決定物件變數參考的類型 (Visual Basic)

物件變數包含儲存於其他地方的資料指標。 該資料類型可以在執行階段期間變更。 您可以隨時使用 GetTypeCode 方法來判斷目前的執行階段類型 (或 TypeOf 運算子),以了解目前的執行階段類型是否與所指定類型相容。

若要判斷物件變數目前參考的確切類型

  1. 在物件變數上,呼叫 GetType 方法以擷取 System.Type 物件。

    Dim myObject As Object
    myObject.GetType()
    
  2. System.Type 類別上,呼叫共用方法 GetTypeCode 以擷取物件類型的 TypeCode 列舉值。

    Dim myObject As Object
    Dim datTyp As Integer = Type.GetTypeCode(myObject.GetType())
    MsgBox("myObject currently has type code " & CStr(datTyp))
    

    您可以針對感興趣的列舉成員 (例如 Double) 來測試 TypeCode 列舉值。

判斷物件變數的類型是否與所指定類型相容

  • 搭配 Is 運算子一起使用 TypeOf 運算子,以 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 運算子

編譯程式碼

請注意,所指定類型不得是變數或運算式。 其必須是已定義類型 (例如類別、結構或介面) 的名稱。 這包括內建類型,例如 IntegerString

另請參閱