System.SetLength
Delphi
procedure SetLength(var S: <string or dynamic array>; NewLength: Integer);
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
procedure | public | System.pas | System | System |
Description
Définit la longueur d'une variable tableau dynamique ou chaîne.
S
est une variable tableau dynamique ou chaîne Delphi.
NewLength
est le nouveau nombre de caractères ou d'éléments de S
.
Pour une variable chaîne courte, SetLength définit simplement le caractère d'indication de la longueur (le caractère en position S[0]) sur la valeur donnée. Dans ce cas, NewLength
doit être compris entre 0 et 255.
Pour une variable chaîne longue, SetLength réalloue la chaîne référencée par S
sur la longueur donnée. Les caractères existants dans la chaîne sont préservés, mais le contenu de l'espace nouvellement alloué n'est pas défini.
Pour une variable tableau dynamique, SetLength réalloue le tableau référencé par S
sur la longueur donnée. Les éléments existants du tableau sont préservés et l'espace nouvellement alloué est défini sur 0 ou nil. Pour les tableaux dynamiques multidimensionnels, SetLength peut prendre plusieurs paramètres de longueur (jusqu'au nombre de dimensions du tableau). Chaque paramètre spécifie le nombre d'éléments avec une dimension particulière.
Après un appel à SetLength, il est certain que S
référence une chaîne ou un tableau unique, c'est-à-dire une chaîne ou un tableau avec un compteur de références à 1. Si la mémoire est insuffisante pour réallouer la variable, SetLength déclenche une exception EOutOfMemory.
Voir aussi
- DynArraySetLength (pour les tableaux dynamiques multidimensionnels)
- Routines intrinsèques de Delphi
- EOutOfMemory