Parfois, nous ne pouvons pas estimer la taille du tableau lors de son utilisation, il est donc facile de penser à des tableaux dynamiques, c'est-à-dire à changer dynamiquement la taille du tableau pendant l'utilisation. C'est facile à implémenter en VB. Utilisons un exemple spécifique pour expliquer :
La définition d'un tableau dynamique en VB implique généralement deux étapes :
(1) Utilisez Dim, Private ou Public pour déclarer un tableau sans indices dans la couche formulaire ou le module standard (les crochets ne peuvent pas être omis),
(2) Utilisez l'instruction ReDim pour définir un tableau avec des indices dans le processus
La fonction de l'instruction ReDim est de repointer la taille du tableau. Il alloue de l'espace de stockage lorsque le programme exécute l'instruction ReDim.
Format : ReDim (nom du tableau) (indice) [As (type)]
Fonction : modifiez la taille et l'espace de stockage du tableau dynamique.
illustrer:
(1) L'indice peut être une constante ou une variable avec une valeur définie.
(2) La signification de chaque paramètre dans l'instruction est la même que celle de l'instruction utilisant Dim pour définir un tableau.
(3) L'instruction ReDim ne peut être utilisée que pour les tableaux dynamiques. Elle peut modifier la taille de chaque dimension, mais pas le nombre de dimensions.
(4) Lorsque le programme est compilé, tous les tableaux de l'instruction ReDim sont déclarés comme tableaux dynamiques. Lorsque le programme est en cours d'exécution, lorsque l'instruction ReDim est exécutée, les nouvelles limites supérieure et inférieure sont réaffectées au tableau, les valeurs des éléments du tableau seront initialisées, les valeurs de tous les éléments numériques sont définies sur 0, et les éléments de chaîne sont définis sur une chaîne de caractères vides.
(5) L'instruction ReDim peut définir un tableau de la même manière que l'instruction Dim. Dans le même programme, l'instruction ReDim peut également être utilisée plusieurs fois. Avant d'utiliser l'instruction :ReDim pour redéfinir le tableau, vous pouvez utiliser l'instruction :Erase pour supprimer le tableau d'origine.
Exemple:
Dimaa()AsLong' définit un tableau dynamique
Redimaa(10)'Ajuster la taille des tableaux dynamiques
dim je comme entier
pour i=1 à 10
aa(je) = je
suivant
Redim aa(5) 'Redimensionner à nouveau
...Autres opérations