Bei mir klappt das auch so:
Delphi-Quellcode:
procedure ShowArrayElements(
const Arr:
array of string);
var
i: integer;
begin
for i := Low(Arr)
to High(Arr)
do
ShowMessage(Arr[i]);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
Info:
array[0..3]
of string;
DynInfo:
array of string;
begin
Info[0] := '
Hallo';
Info[1] := '
Welt';
Info[2] := '
Hello';
Info[3] := '
World';
ShowArrayElements(Info);
SetLength(DynInfo, 2);
DynInfo[0] := '
Dideldum';
DynInfo[1] := '
Wuppdi';
ShowArrayElements(DynInfo);
DynInfo :=
nil;
end;
Ich kann zwar nicht erkennen, wieso das plötzlich ShortStrings sein sollen, und die Indizes im Ausgangspost sind auch falsch belegt (2 bis 5 dürfte Probleme bereiten), aber an der fehlenden Typisierung sollte es nicht liegen. Ich hätte eher die Meldung erwartet, dass man keine Properties als Var-Parameter übergeben kann.