Prima, dass es jetzt klar ist!
zu 1: das erste Item hat den Index 0
zu 2: fast. Du musst für ein neues Item erst "Platz schaffen". Du musst also die Länge des Arrays um eins erhöhen und dann an die dadurch neu erstellte Position Deine Daten schreiben. Also so:
Quelltext
1:
| SetLength(my_array,Length(my_array)+1); |
Das neue (leere) Element wird hinten drangehängt, hat als nun den Index High(my_array). In Bezug auf die
alte Länge des Arrays ist das, wie Du ganz richtig geschrieben hast, die Position High(my_array)+1. Nur das das nicht funktionieren würde, da High(my_array) Dir ja gerade den Index des letzten ansprechbaren Elements gibt. Dann ein Element anzusprechen zu versuchen, welches darüber liegt, geht natürlich nicht. Dafür die Verlängerung des Arrays.
MfG,
Peter
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".