Einzelnen Beitrag anzeigen

Golem

Registriert seit: 4. Sep 2003
3 Beiträge
 
#3

Re: Variable Arrays (mal wieder)

  Alt 4. Sep 2003, 19:27
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]
  Mit Zitat antworten Zitat