Forum: Object-Pascal / Delphi-Language
by Andreas13,
7. Jun 2021
Himitsu,
der Grund ist die für mich wesentlich einfachere und übersichtlichere Handhabung der "stinknormal" prozedual erstellten altmodischen – aber vielfach getesteten und bewährten – Funktionen & Prozeduren meistens ohne Klassen und Records. Warum kompliziert, wenn es auch einfach geht.
Ich weiß, meine Ansichten sind nicht ganz zeitgemäß: Mein fortgeschrittenes Alter möge als Entschuldigung...
Forum: Object-Pascal / Delphi-Language
by Andreas13,
6. Jun 2021
Chapeau, Uwe: Du bist wirklich ein echter Master Developer! Es funktioniert alles! Besonders Dein letzter Vorschlag:
erleichtert mir das Umsteigen enorm.
Vielen-vielen Dank Dir und Euch allen: Ihr seid die GRÖSSTEN! Ich habe sehr viel von Euch gelernt.
Viele Grüße, Andreas :thumb: :dancer:
Forum: Object-Pascal / Delphi-Language
by Andreas13,
5. Jun 2021
Hallo Uwe,
für einfachere Anwendungsfälle mit linearem Verhalten reicht der von Uli vorgeschlagene Ansatz mit overload.
Aber hier ist ein einfaches Praxisbeispiel, wo ein overload nicht mehr ausreicht:
Function Nu_Rohr_Turbulent(Re, Pr, d_i, L, Eta, Eta_W: Extended;
c1: Extended = 0.0235;
...
Forum: Object-Pascal / Delphi-Language
by Andreas13,
5. Jun 2021
@Uligerhardt:
Doch Uli, es funktioniert bestens, denn beim Aufruf der Funktion kann ich die optionalen Parameterwerte überschreiben, d.h. mit neuen Werten belegen, mit denen dann gerechnet werden soll.
Hallo KodeZwerg,
ja, aber damit hast Du den Record in optional vorbelegte Teile zerpflückt. Das würde bei mir etwa entsprechen:
Function p_Rec(V, T, n: Extended; X: Double = 1.25; X:...
Forum: Object-Pascal / Delphi-Language
by Andreas13,
5. Jun 2021
@KodeZwerg:
Die einfache herkömmliche Alternative wäre, in der rufenden Routine den Record z vorzubelegen z.X:= 1.25; z.Y:= 2.5; und z so als Parameter zu übergeben.
Daraus Klassen zu machen mit "strict private" Variablen und einer "Init" - Methode wäre eine Kanone auf ein Spätzchen, zumal ich etliche solche Funktionen mit Vorbelegung habe. Dadurch wäre sowohl der Code, als auch die Benutzung...
Forum: Object-Pascal / Delphi-Language
by Andreas13,
4. Jun 2021
Danke Uli für Deinen Vorschlag! Der einzige Schönheitsfehler ist nur, daß sich dadurch der Code verdoppelt und Redundanzen mit den bekannten Nachteilen entstehen.
Vielleicht kennt jemand einen noch besseren Weg?
Gruß, Andreas
Forum: Object-Pascal / Delphi-Language
by Andreas13,
4. Jun 2021
Hallo Community,
ich möchte gerne Optionale (= vorbelegte) FunktionsParameter vom Type Record nach folgendem Muster verwenden:
Function p_ex(V, T, n: Extended; z: Extended = 1.25): Extended;
Begin
. . .
End;
So funktioniert es natürlich einwandfrei.
Nun möchte ich einen vorbelegten Record als Parameter z übergeben: