Hallo!
Es gibt noch eine weitere Möglichkeit: OVERLOAD! Damit kannst Du mehrere Prozeduren/Funktionen mit demselben Namen, aber unterschiedlichen Parameterlisten schreiben. Der Compiler erzeugt dann Code, der die von den Parametern her "richtige" Routine aufruft. Die können sich sogar gegenseitig aufrufen. Beispiel:
Code:
function Test(S: string; I:integer): integer; overload;
begin
// der gewünschte Code
end;
function Test(S: string): integer; overload;
begin
Result:= Test (S, 0);
end;
Man muß nur für jede mögliche Parameter-Kombination eine Funktion schreiben.
Hier wäre ja die Initialisierung in Ordnumg, aber bei einem optionalen VAR-Parameter (var I:integer) hilft nur Overload!
Gruß
Dietmar Brüggendiek