IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Sommaire > Tableau
        Comment initialiser des tableaux ?

        


Comment initialiser des tableaux ?
auteur : Laurent Dardenne
Vous trouverez ici différentes possibilités d'initialiser un tableau sous Delphi.NET.
Vous trouverez dans l'aide en ligne d'autres informations sur les tableaux dynamiques en recherchant le mot-clé : Types structurés

< ![CDATA[ program FaqTableau2; {$APPTYPE CONSOLE} uses SysUtils, Classes; //TStringList Const Nbitem=10; type MyArray = Array[0..Nbitem] of Integer; var I :Integer; Tableau :MyArray; begin // Initialisation par boucle en connaissant la taille // * A privilégier par rapport à l'appel d'un itérateur* Writeln('Initialisation par boucle en connaissant la taille'); for I:=0 to Nbitem do begin Tableau[I]:=I; Write(I.ToString+':'+Tableau[I].ToString+' , '); end; Writeln;Writeln; // Pour initialiser un tableau à zéro, similaire à Fillchar sous Win32 Writeln('Initialisation à zéro par Initialize'); // * A privilégier par rapport à l'appel de Array.Clear* Initialize(Tableau); For I:=0 to Nbitem do Write(I.ToString+':'+Tableau[I].ToString+' , '); Writeln;Writeln; // Initialisation via un itérateur Writeln('Initialisation à 4 par itérateur'); For I in Tableau do begin Tableau[I] := 4; Write(I.ToString+':'+Tableau[I].ToString+' , '); end; Writeln;Writeln; // Pour initialiser un tableau à 0 Writeln('Initialisation à zéro par Array.Clear'); &Array.Clear(Tableau,0,Length(Tableau)); for I:=0 to Nbitem do Write(I.ToString+':'+Tableau[I].ToString+' , '); Writeln;Writeln; //Initialisation par boucle sans connaitre la taille Writeln('Initialisation par boucle sans connaitre la taille'); For I := 0 to Pred(Length(Tableau)) do begin Tableau[I] := I; Write(I.ToString+':'+Tableau[I].ToString+' , '); end; readln; end.
L'accés aux membres du type .NET natif se fait en transtypant le nom de variable d'un type tableau en System.Array.

Const Nbitem=10; type MyArray = Array[0..Nbitem] of Integer; var I :Integer; Tableau :MyArray; begin I:=System.Array(Tableau).Rank; Writeln(' I = '.I.ToString); end;

        

Consultez les autres F.A.Q's

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2005 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.