Einzelnen Beitrag anzeigen

josefkoller

Registriert seit: 22. Okt 2012
49 Beiträge
 
#12

AW: Prozedur zusammenbauen

  Alt 17. Nov 2012, 21:10
Hi,

Mehrdimensionale Arrays kann man AFAIK nicht als offene Arrays übergeben, aber wenn man typisiert, sollte das klappen. Schnell unter Lazarus zusammengetippt und ausprobiert:
Delphi-Quellcode:
type
  TStringArray = array of string;

procedure ShowValues(const ValueArrays: array of TStringArray);
var
  i, j: integer;
begin
  for i := Low(ValueArrays) to High(ValueArrays) do
    for j := Low(ValueArrays[i]) to High(ValueArrays[i]) do
      ShowMessage(ValueArrays[i, j]);
end;

{ TForm1 }

procedure TForm1.Button1Click(Sender: TObject);
var
  Arr1, Arr2: TStringArray;
begin
  SetLength(Arr1, 2);
  Arr1[0] := 'Hallo';
  Arr1[1] := 'Welt';
  SetLength(Arr2, 3);
  Arr2[0] := 'Hier';
  Arr2[1] := 'bin';
  Arr2[2] := 'ich';
  ShowValues([Arr1, Arr2]);
  Arr1 := nil;
  Arr2 := nil;
end;
Kann aber auch sein, dass ich das Problem nicht richtig verstanden habe.

eben bei

ShowValues([Arr1, Arr2]);

wie in Deinem Beispiel hakt es. wie bekomme ich da eins, zwei drei, vier Arrays rein? also nicht händisch reingetippt.

danke.

Josef
  Mit Zitat antworten Zitat