Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - dynamisches 2d array


MathiasH - So 03.11.02 14:00
Titel: dynamisches 2d array
Hi Leude
Ist es möglich ein dynamisches array zu machen, dass zwei Dimensionen hat?, diese array soll dann aus einem TFile(das array ist in einem record enthalten) ausgelesen werden, an dessen Anfang x und y ausdehnung des arrays steht.

MathiasH


Michi_Mueller - So 03.11.02 14:50

Also, ich glaub das geht nich! Das sit nur mit nem eindimensionalen möglich!


Christian S. - So 03.11.02 15:04

Hi!

Ein mehrdimensionales dynamisches Array erstellst Du so:


Quelltext
1:
VAR mein_array : ARRAY OF ARRAY OF Integer;                    


Die Größe ändern:

Quelltext
1:
2:
SetLength(mein_array,3);
SetLength(mein_array[0],3);


Allerdings kannst Du, glaube ich, keine dynamischen Arrays in einem Record verwenden, wenn Du diesen mit "FILE OF" speichern möchtest. Das ist wie ein String, bei dem Du die Länge nicht angibst. Das geht auch nicht.

MfG,
Peter


MathiasH - So 03.11.02 20:15

das mit dem laden geht schon, denn es wird genau so oft geladen, wie es am anfang angegeben wurde!


Christian S. - So 03.11.02 20:31

Kannst Du den Code mal posten? Würde mich interessieren!


MathiasH - Mo 04.11.02 17:54

also ich hab es geändert: es wird jetzt aus einem normalen File mithilfe von blockred gelesen, da kann ich vorher die Größe lesen, hast Recht gehabt, mit file of geht das wirklich nicht.

aber danke für das mit setlength, hätte nicht gedacht, dass das mit XD arrays so einfach geht :D

MathiasH