Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.163 Beiträge
 
Delphi 12 Athens
 
#9

Re: Mehrdimensionales Array variable auslegen

  Alt 24. Apr 2009, 13:02
[info] hab oben was editiert

vielleicht fällst es so besser auf, wenn man das trennt ... ergibt Beides das Selbe
Delphi-Quellcode:
ia: Array[0..767, 0..100] of Byte;

ia: Array[0..767] of Array[0..100] of Byte;
und nu erkennt man auch, warum man es wie mit SetLength bearbeiten kann.

PS: hier kann man natürlich auch jedem Unterarray eine eigene Länge verpassen
(nicht alle Arrays der selben Ebene müssen gleich groß sein)

[add]
Zitat von EWeiss:
EDIT:
warum dann einen wert mehr ?
aus 767 wird 768 ?
weil 0 bis 767 nunmal 768 Felder sind?


[add2]
hier nochmal das Ganze mit 3 Ebenen ... dürfte do dann hoffentlich klarer werden lassen
Delphi-Quellcode:
ia: Array[0..99, 0..199, 0..299] of Byte;

ia: Array[0..99] of Array[0..199] of Array[0..299] of Byte;

ia: Array of Array of Array of Byte;

SetLength(ia, 100, 200, 300);

SetLength(ia, 100);
For i1 := 0 to High(ia) do Begin { 0 to Length(ia) - 1 }
  SetLength(ia[i1], 200);
  For i2 := 0 to High(ia[i1]) do { 0 to Length(ia[i1]) - 1 }
    SetLength(ia[i1, i2], 300); // SetLength(ia[i1][i2], 300);
End;
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat