Valeurs des variables objets (Visual Basic)
Une variable du type de données d’objet peut faire référence à des données de n’importe quel type. La valeur que vous stockez dans une variable Object
est conservée ailleurs dans la mémoire, tandis que la variable elle-même contient un pointeur vers les données.
Fonctions de classifieur d’objets
Visual Basic fournit des fonctions qui retournent des informations sur ce à quoi fait référence une variable Object
, comme indiqué dans le tableau suivant.
Fonction | Retourne true si la variable objet fait référence à |
---|---|
IsArray | un tableau de valeurs plutôt qu’une valeur unique |
IsDate | une valeur type de données date ou une chaîne pouvant être interprétée comme une valeur de date et d’heure |
IsDBNull | un objet de type DBNull, qui représente des données manquantes ou inexistantes |
IsError | un objet d’exception, qui dérive de Exception |
IsNothing | Rien, c’est-à-dire qu’aucun objet n’est actuellement affecté à la variable |
IsNumeric | Nombre, ou chaîne pouvant être interprétée comme un nombre |
IsReference | un type de référence (tel qu’une chaîne, un tableau, un délégué ou un type de classe) |
Vous pouvez utiliser ces fonctions pour éviter d’envoyer une valeur non valide à une opération ou à une procédure.
TypeOf, opérateur
Vous pouvez également utiliser l’opérateur TypeOf pour déterminer si une variable objet fait actuellement référence à un type de données spécifique. L’expression TypeOf
...Is
indique True
si le type d’exécution de l’opérande est dérivé du type spécifié ou l’implémente.
L’exemple suivant utilise TypeOf
sur des variables objet faisant référence aux types valeur et référence.
' The following statement puts a value type (Integer) in an Object variable.
Dim num As Object = 10
' The following statement puts a reference type (Form) in an Object variable.
Dim frm As Object = New Form()
If TypeOf num Is Long Then Debug.WriteLine("num is Long")
If TypeOf num Is Integer Then Debug.WriteLine("num is Integer")
If TypeOf num Is Short Then Debug.WriteLine("num is Short")
If TypeOf num Is Object Then Debug.WriteLine("num is Object")
If TypeOf frm Is Form Then Debug.WriteLine("frm is Form")
If TypeOf frm Is Label Then Debug.WriteLine("frm is Label")
If TypeOf frm Is Object Then Debug.WriteLine("frm is Object")
L’exemple précédent écrit les lignes suivantes dans la fenêtre Débogage :
num is Integer
num is Object
frm is Form
frm is Object
La variable d’objet num
fait référence à des données de type Integer
, et frm
fait référence à un objet de classe Form.
Tableaux d'objets
Vous pouvez déclarer et utiliser un tableau de variables Object
. Cela est utile lorsque vous devez gérer divers types de données et classes d’objets. Tous les éléments d’un tableau doivent avoir le même type de données déclaré. La déclaration de ce type de données comme Object
vous permet de stocker des objets et des instances de classe en même temps que d’autres types de données dans le tableau.
Voir aussi
- Variables objets
- Déclaration des variables objets
- Affectation des variables objets
- Comment : référencer l'instance actuelle d'un objet
- Comment : déterminer le type désigné par une variable objet
- Comment : déterminer si deux objets sont liés
- Guide pratique : déterminer si deux objets sont identiques
- Data types