Hi
.was leider falsch ist. SetLength(Array,x+1) vergrößert das Array und löscht keine vorhandenen Einträge, lediglich beim Verkleinern verschwinden logischerweise die Einträge am Ende.
Bei mir wird gelöscht. Habe es nochmal ausprobiert. Hier etwas Code:
Delphi-Quellcode:
type
mlist = record
von : integer;
nach : integer;
schlag : boolean;
end;
movelist1 : array of mlist;
procedure storemove(mcount : integer; von : integer; nach : integer; schlag : boolean);
begin
setlength(movelist1, mcount); // Dynamisches Array festlegen!
movelist1[mcount].von := von;
movelist1[mcount].nach := nach;
movelist1[mcount].schlag := schlag;
end;
Diese Procedure ist wirklich simpel und speichert eine Zug "von" - "nach" wobei mcount in der aufrufenden Procedur um eins erhöht wird.
Gebe ich nach einem Durchlauf alle Züge "von nach" aus sind alle von "0" nach "0" ausser dem zuletzt erzeugten.
Mache ich irgendetwas grundlegend falsch?
Danke nochmal und Bye
Golem
[edit=Daniel B]Delphi-Tags eingefügt. Mfg, Daniel B[/edit]