Eine Type-Deklaration deklariert ein dynamisches Array.
Wird ein ein Parameter von diesem Typ übergeben, so ist der Parameter in Wirklichkeit ein Zeiger auf das ursprüngliche Array.
Da gibt es keine Typumwandlung der Elemente.
Die Direktive "overload" ermöglicht Procedure mit gleichem Namen mit unterschiedlichen Parametern.
Eine direkte Array-Deklaration als Parameter deklariert eine sogenanntes "offenes Array".
Delphi-Quellcode:
procedure procArrDouble(const AArrDouble: Array of Double);
procedure Test;
var
a: Double;
b: Extendet;
c: Integer;
begin
procArrDouble([a, b, c]);
end;
Hier wird jeder einzelne Parameter in den Zieltyp umgewandelt und in ein offenes Array gepackt.