Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.110 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

AW: SetLenght mit einem Array als var Parameter

  Alt 22. Mai 2017, 13:14
Frage 1: Warum ist das so?
Weil der Compiler anscheinend nicht schlau genug ist zu sehen dass der Typ deiner Variable und der Typ deines Parameters der gleiche ist. Das "Array of" scheint zwei mal inline einen neuen Typ zu generieren. So zumindest hat man mir das mal erklärt.

Kann man das irgendwie umgehen?
Delphi-Quellcode:
type
   TWhatever = type Integer;
const
   someSpookyNumer = 42;
var
   myArray: TArray<TWhatEver>; // statt "array of TWhatEver"

procedure p(var data: TArray<TWhatever>); // statt "array of TWhatEver"
begin
   SetLength(data, someSpookyNumer);
end;

begin
   p(myArray);
end.
  Mit Zitat antworten Zitat