Delen via


Procedure: Bepalen naar welk type een objectvariabele verwijst (Visual Basic)

Een objectvariabele bevat een aanwijzer naar gegevens die elders zijn opgeslagen. Het type gegevens kan tijdens de runtime worden gewijzigd. Op elk moment kunt u de GetTypeCode methode gebruiken om het huidige runtimetype te bepalen, of de TypeOf-operator om erachter te komen of het huidige runtimetype compatibel is met een opgegeven type.

Het exacte type van een objectvariabele bepalen waarnaar momenteel wordt verwezen

  1. Roep in de objectvariabele de GetType methode aan om een System.Type object op te halen.

    Dim myObject As Object
    myObject.GetType()
    
  2. Roep in de System.Type klasse de gedeelde methode GetTypeCode aan om de TypeCode opsommingswaarde voor het objecttype op te halen.

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

    U kunt de TypeCode opsommingswaarde testen op basis van de gewenste opsommingsleden, zoals Double.

Bepalen of het type van een objectvariabele compatibel is met een opgegeven type

  • Gebruik de TypeOf operator in combinatie met de is-operator om het object te testen met een TypeOf...Is -expressie.

    If TypeOf objA Is System.Windows.Forms.Control Then
        MsgBox("objA is compatible with the Control class")
    End If
    

    De TypeOfexpressie ...Is retourneert True als het runtimetype van het object compatibel is met het opgegeven type.

    Het criterium voor compatibiliteit is afhankelijk van of het opgegeven type een klasse, structuur of interface is. Over het algemeen zijn de typen compatibel als het object van hetzelfde type is als, wordt overgenomen van of het opgegeven type wordt geïmplementeerd. Zie TypeOf Operator voor meer informatie.

De code compileren

Houd er rekening mee dat het opgegeven type geen variabele of expressie kan zijn. Dit moet de naam zijn van een gedefinieerd type, zoals een klasse, structuur of interface. Dit omvat intrinsieke typen zoals Integer en String.

Zie ook