déclarer un tableau dynamiquement et ... - Delphi/Pascal - Programmation
Marsh Posté le 13-02-2003 à 21:12:27
GetMem pour un array of string c'est un peu casse-gueule
(enfin passer ce genre de trucs à une DLL je suis pas sûr que ce soit tellement plus safe )
Marsh Posté le 13-02-2003 à 21:23:00
ha avec sharemem on peut utiliser les array dynamiques ? je savais pas
Marsh Posté le 13-02-2003 à 22:03:16
les tableaux dynamiques n'existent pas sous delphi 3 or TanteMerde (ça c du pseudo ) travaille sous D3...
Marsh Posté le 17-02-2003 à 10:33:40
merci pour vos réponses !
zion, ta solution fonctionnerait à partir de Delphi 4, mais cette partie de mon projet est développée sous D3, donc pas de gestion dynamique possible avec SetLength (comme l'a fait remarquer Taureau).
antp, effectivement, la gestion dynamique d'un array of string ça plaisait pas du tout à D3, donc j'ai fait autrement.
en fait, le but était de passer le contenu d'une TStringList dans un array of String. J'ai découvert qu'il y a une propriété TStringList.Text qui transmet l'intégralité de la TStringList dans un seul String donc j'ai plus de problème !
merci à tous pour vos conseils, et à bientôt
PS: pour la licence D6 merci on a tout ce qu'il faut ici lol
en fait on bosse en même temps sur D3, D5 et D6
Marsh Posté le 10-02-2003 à 13:35:19
salut !
voilà, j'ai besoin de déclarer un tableau de String de façon dynamique sous Delphi 3.
voilà comment je m'y suis pris :
/////////////////////////////////////
procedure appelDll(...);
type TMonTablo = array[word] of String;
PMonTablo = ^TMonTablo;
var TAB : PMonTablo;
procedure RempliTablo(n : Integer);
begin
GetMem(TAB,n*4);
for i := 0 to n do
TAB[i] := 'toto';
end;
begin
RempliTablo(n);
fonctionDll(TAB);
end;
////////////////////////////////
c'est une simplification du code d'origine.
Mon problème c'est que ma procédure 'fonctionDll', appelée dans le corps de la procédure 'appelDll', attend un array of String, donc à la compil' je reçois le message 'Types incompatibles : PMonTablo et String ... quelqu'un sait ce qu'il me faut pour passer mon tableau TAB dans ma procédure fonctionDll ?
Merci de votre aide,
Yohann