Hallo zusammen,
folgende Situation:
Ich brauche ein globales zweidimensionales array. Die Länge muß aus einem file ausgelesen werden, also kann est erst zur Laufzeit mit setlength definiert werden. Wenn ich das aber folgendermaßen in einem Prozeduraufruf tun will:
Delphi-Quellcode:
procedure Felderzeugen (var tabelle : array of array of boolean);
var Zeile:string;
i,j:integer;
begin
setlength (tabelle,laenge,breite);
...
(wobei laenge und breite funktionen sind, die die benötigten Daten aus der Datei auslesen)
beschwert er sich:
"Fehler] chiquadrat.pas(114): Bezeichner erwartet, aber 'ARRAY' gefunden",
anscheinend mag er die mehrdimensionalität meines arrays also nicht.
Die Hilfe ist dazu auch eher kryptisch:
"Hinweis: In einigen Funktions- und Prozedurdeklarationen werden Array-Parameter in der Form array of Basistyp ohne festgelegten Indextyp angegeben:
function CheckStrings(A: array of string): Boolean;
In diesem Fall kann die Funktion auf alle Arrays des angegebenen Basistyps angewendet werden, unabhängig von der Größe der Arrays und der Art ihrer Indizierung. Es spielt auch keine Rolle, ob den Arrays der Speicherplatz statisch oder dynamisch zugewiesen wird. Weitere Informationen hierzu finden Sie im Abschnitt Offene Array-Parameter."
kann mir irgendwer helfen? wie kann man das umgehen?
vielen Dank im vorraus
Manuel
[edit=Sharky]Delphi-Tags gesetzt. Mfg, Sharky[/edit]