Koraluv
Messages postés2Date d'inscriptionvendredi 21 janvier 2005StatutMembreDernière intervention 8 juin 2005
-
8 juin 2005 à 13:46
florenth
Messages postés1023Date d'inscriptiondimanche 1 août 2004StatutMembreDernière intervention17 août 2008
-
13 juin 2005 à 20:48
Salut à tous!
Je suis débutante en delphi et je voudrai créer une classe qui ai comme attribut un tableau dynamique à deux dimentions de TCellule.
je l'ai déclaré comme ca : (car il ne veux pas de "array of array of ...")
mais je ne sais pas comment ni quand définir la taille de mon tableau : si je lui met " SetLength(GrilleVal, nbLig, nbCol);" dans une méthode, il me dit qu'il attend '[' juste après GrilleVal.
cs_Delphiprog
Messages postés4297Date d'inscriptionsamedi 19 janvier 2002StatutMembreDernière intervention 9 janvier 201332 11 juin 2005 à 23:41
Bravo Florenth.
Juste une petite suggestion : pourquoi ne pas ajouter une méthode de portée publique qui se nommerait SetLength et dont la signature serait :
procedure SetLength(SizeX, SizeY: integer);
Et l'implémentation serait simplement :
procedure SetLength(SizeX, SizeY : integer);
begin
System.SetLength(FTableau, SizeX, SizeY);
FTableauXCount:= SizeX;
FTableauYCount:= SizeY;
end;
Utiliser directement la procédure SetLength contenue dans l'unité system n'est pas possible puisque le membre FTableau est de portée Private (et j'ajouterai : heureusement).
<HR color=#008000>
Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.
<
Vous n’avez pas trouvé la réponse que vous recherchez ?
florenth
Messages postés1023Date d'inscriptiondimanche 1 août 2004StatutMembreDernière intervention17 août 20083 13 juin 2005 à 20:48
Mais évidemment qu'il faut le redimentionner le tableau avant de l'utiliser !!
Commet ai-je pu oublier cela ??
(non, non, cela ne m'arrive pas dans mes programmes heureusement)
Par contre, je suis un peu contre l'appelation de SetLength() qui porte
confusion à la procedure de l'unité System. (même s'ily y a aucune
confusion au niveau de la compilation)
Dans ces cas là, moi je met des noms français comme procedure DefinirTaille(TailleX, TailleY: Integer);