Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.062 Beiträge
 
Delphi 12 Athens
 
#4

AW: 2-Dimensionale Stringlisten übergeben

  Alt 6. Sep 2024, 00:30
Niemand hat hier gesagt, um welche Delphiversion es geht.

Ursprünglich konnte man Array-Deklarationen nur direkt an ein OpenArray übergeben, also wo der Parameter direkt als array of ... deklariert wurde.
Allem Anderen konnte man ausschließlich Variablen/Konstanten (und Property, sowie Function-Results) genau dieses Typs übergeben.

Auch wenn sich da in den letzten Jahren / Delphiversionen schon so einiges getan hatte und man nun auch Variablen direkt solche Array via [...] übergeben kann,
ist der Compiler manchmal echt saudämlich.
Neuerdings geht es "eigentlich" auch direkt an dynamische Array-Konstanten, aber ... siehe unten der erste Link.

Delphi-Quellcode:
type TAbcPairArray = TArray<TArray<string>>;
procedure Test(const slValues : TAbcPairArray);

type TAbcPair = TArray<string>;
procedure Test(const slValues : TArray<TAbcPair>);

procedure Test(const slValues : TArray<TArray<string>>);

procedure Test(const slValues : array of TArray<string>); // OpenArray mit Array-Typ

procedure Test(const slValues : array of array of string); // OpenArray

PS: auch noch bissl was zu Arrays:
https://embt.atlassian.net/servicede...tal/1/RSS-1691
https://quality.embarcadero.com/browse/RSP-42255
https://quality.embarcadero.com/browse/RSP-39686
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 6. Sep 2024 um 00:48 Uhr)
  Mit Zitat antworten Zitat