Ich würde dir raten, auf dynamische Arrays zum Zwecke der Datenübergabe zu verzichten.
In deinem Fall könntest du einfach eine StringListe (Klasse TStringList bzw.
TStrings verwenden).
Delphi-Quellcode:
TForm37 = class(TForm)
private
{ Private-Deklarationen }
public
procedure callmaches;
procedure maches(liste:TStrings);
{ Public-Deklarationen }
end;
procedure TForm37.maches(liste:TStrings): ValueArray;
begin
liste.Clear;
liste.Add('Eintrag0');
liste.Add('Eintrag1');
end;
Das Problem, ist dass dynamische Arrays häufig benutzt werden, obwohl sie in dem aktuellen Kontext eher nachteilig sind.
Das betrifft vorallem Anfänger, die die (besseren) Alternativen zu einem dyn. Array noch nicht kennen.
http://blogs.msdn.com/ericlippert/ar...t-harmful.aspx