Bin ich eigentlich zu einfach gestrickt? Fragestellung: Wie hänge ich ein Integer Array an ein anderes?
Lösung: auf keinen Fall diese seitenlangen Stringkopierorgien.
Diese Stringkopierorgien haben ja nicht mit der Frage zu tun, sondern wie man die Funktion verändern könnte, in der die Notwendigkeit der Array-Verkettung vorgekommen ist.
Delphi-Quellcode:
procedure TForm1.AppendIntArray(var IntArr1: TIntegerArray; IntArr2: TIntegerArray);
var
i: Integer;
origLen: Integer;
begin
origLen := Length(IntArr1);
SetLength(IntArr1, Length(IntArr1) + Length(IntArr2));
for i := 0 to Length(IntArr2) - 1 do
begin
IntArr1[origLen + i] := IntArr2[i];
end;
end;
Nimm die Schleife heraus und mache es mit "Move" so wie in #9 bereits schon beschrieben.
Programmieren ist die Kunst aus Nullen und Einsen etwas sinnvollen zu gestalten.
Der bessere Künstler ist allerdings der Anwender, denn dieser findet Fehler, welche sich der Programmierer nicht vorstellen konnte.