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