Einzelnen Beitrag anzeigen

SirTwist

Registriert seit: 28. Sep 2006
198 Beiträge
 
Delphi XE Professional
 
#1

Parameterübergabe: Array of record

  Alt 18. Mär 2007, 14:24
Hallo,

nu hab ich auch mal eine Frage: Ich möchte gerne an eine Prozedur/Funktion ein offenes Array von Records übergeben. Mit offenen Arrays von normalen Datentypen (z.B. Strings) klappt das recht einfach:

procedure Log(arr: array of String); kann ich aufrufen mit
Log([str1, str2, str3]); Wenn ich mir jetzt ein Record definiere, würd ich gerne eine variable Anzahl dieser Records an meine Funktion übergeben:

Delphi-Quellcode:
type
  TCmdLineSwitch = record
    Name: String;
    ValueType: (vtString, vtInteger, vtBool);
  end;

function ParseArgs(switches: array of TCmdLineSwitch);
Soweit so gut. Aber wie rufe ich diese Funktion jetzt auf?

ParseArgs(['debug', vtBool], ['logfile', vtString], ['loglevel', vtInteger]); klappt nicht.

Hat da jemand eine Idee, wie (und ob überhaupt) das geht? Ich möchte eigentlich nicht extra erst eine Variable definieren, die ich explizit füllen muss.

Danke schonmal!

Gruß,
Michael
  Mit Zitat antworten Zitat