2.5.3 Tableau fixe
Transcription
2.5.3 Tableau fixe
WLangage.book Page 50 Mardi, 23. avril 2013 1:59 13 Si des variables de même nom sont déclarées dans différents traitements du projet, la règle de portée des variables s'applique. Fonctions du WLangage et Tableaux dynamiques Plusieurs fonctions WLangage permettent de manipuler des tableaux dynamiques. Il est par exemple possible d'effectuer des tris, des recherches, ... Pour plus de détails, consultez l’aide en ligne. 2.5.3 Tableau fixe Un tableau fixe est un type "avancé" de tableau : les dimensions de ce tableau sont fixées lors de la compilation et ne peuvent pas être modifiées. Les dimensions d'un tableau sont fixées lors de la compilation, uniquement si les dimensions de ce tableau correspondent : • soit à un entier. • soit à une constante préalablement créée. Dans les autres cas, une erreur du WLangage est générée lors de la compilation du projet. Rappel : Un tableau est un type structuré qui permet de regrouper une série d'éléments de même type. Chaque élément du tableau est accessible directement par son numéro d'ordre. Il est conseillé d'utiliser : • un tableau fixe pour passer en paramètre un tableau aux fonctions API Windows. • un tableau dynamique ou un tableau "simple" lorsque la taille du tableau doit être modifiée au cours du programme. • un tableau associatif pour stocker des éléments indexés sur n’importe quel type d’information. Syntaxe Déclarer un tableau fixe <Nom du tableau> est un tableau fixe de <Dimension 1> [par <Dimension 2> ... [par <Dimension 10>]] <Type des éléments du tableau> OU <Nom du tableau> est un tableau fixe de <Dimension 1> [,<Dimension 2> ... [,<Dimension 10>]] <Type des éléments du tableau> TableauClient est un tableau fixe... de 5 par 7 par 3 entiers // Équivalent à : TableauClient est un tableau fixe... de 5,7,3 entiers 50 Partie 2 : Syntaxe de base du WLangage Faire référence à un tableau fixe • Faire référence à un élément d'un tableau à une dimension : <Nom du tableau>[Indice1] • Faire référence à un élément d'un tableau à deux dimensions : <Nom du tableau>[Indice1, Indice2] OU <Nom du tableau>[Indice1][Indice2] • Faire référence à un élément d'un tableau à N dimensions : <Nom du tableau>[Indice1, ... , IndiceN] OU <Nom du tableau>[Indice1]...[IndiceN] • Passer un tableau en paramètre à une procédure : <Nom de la procédure>(<Nom du tableau>) Remarque : Il n'est pas possible de manipuler un tableau dans sa totalité. Par exemple, il n'est pas possible d'affecter un tableau avec un autre tableau. TableauClient[2,5,3] = 47 // Équivalent à : TableauClient[2][5][3] = 47 Passer un tableau fixe en paramètre à une procédure Un tableau fixe peut être passé en paramètre à une procédure. Pour cela, utilisez la syntaxe suivante : <Nom de la procédure>(<Nom du tableau>) TableauFourn est un tableau fixe ... de 10 par 50 chaînes // Appel procédure AfficheTableau AfficheTableau(TableauFourn) Déclarer un membre de type tableau fixe Il est possible de déclarer un membre de type tableau fixe dans : • une classe. Ce tableau fixe est alloué directement dans la zone mémoire de cette classe. • une variable composée. Ce tableau fixe est alloué directement dans la zone mémoire de cette variable composée. • une structure <Nom de la structure>. Ce tableau fixe est alloué directement dans la zone mémoire de chaque variable de type <Nom de la structure>. Struct est une structure n1 est un entier nTab est un tableau fixe sur ... 2 entiers n2 est un entier FIN MaStructure est une Struct