Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
7. Jun 2021
Nun braucht man nur noch ein Create für den Record mit den besagten optionalen Parametern und man ist wieder am Anfang - nur komplizierter.
Ne, is klar. Parameter Records sind schon besser, weil man damit sowas wie benannte Parameter realisieren kann, die Parameter leicht erweitern oder verändern kann. Aber es ist halt auch vor dem Aufruf um einiges komplexer.
Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
6. Jun 2021
Um das mal zu verdeutlichen:
Function Nu_Rohr_Turbulent(Re, Pr, d_i, L, Eta, Eta_W, c1, c2, c3, c4, c5, c6: DoubleDouble): DoubleDouble; overload;
VAR
Z: DoubleDouble;
Begin
Z := c1*(Power(Re, c2) - c3);
Z := Z*(c4*Power(Pr, c5) - c6);
Z := Z*(1 + Power(d_i/L, 2/3));
Result:= Z*Power(Eta/Eta_W, 0.14);
Forum: Object-Pascal / Delphi-Language
by Uwe Raabe,
5. Jun 2021
Nun, der Compiler lässt aber nun mal Default-Werte bei Record-Parametern nicht zu. Dann bleibt halt nur der von Uli beschriebene Ansatz mit overload.
Für den anfangs beschriebenen Anwendungsfall sehe ich da auch keinen wesentlichen Nachteil.
function p_Rec(V, T, n: Extended; const z: TDRecord): Extended; overload;
begin
. . .
end;
function p_Rec(V, T, n: Extended): Extended;...