Forum: Object-Pascal / Delphi-Language
Delphi
by Uwe Raabe,
12. Okt 2020
Das sollte ja keine Kritik an dem Code sein. Ich wollte nur verdeutlichen, dass sehr wohl eine Fehlerbehandlung außerhalb der gezeigten Source-Zeilen existieren kann. So als Alternative zu Exceptions.
Forum: Object-Pascal / Delphi-Language
Delphi
by Uwe Raabe,
11. Okt 2020
Das ist Teil des Compiler-Schalters $X (Erweiterte Syntax):
Leider ist bei $X- auch die Verwendung von Result anstatt des Funktionsnamen für den Rückgabewert nicht mehr möglich. Das wird aber aktuell soviel verwendet, dass vermutlich kaum ein Programm noch mit $X- compileren würde.
Forum: Object-Pascal / Delphi-Language
Delphi
by Uwe Raabe,
10. Okt 2020
Auf eine Zeile mit einem simplen Exit kannst du aber keinen Breakpoint setzen. Nur wenn mit dem Exit ein Result zurückgegeben wird geht das.
if not KlapptDas1 then
Exit(False);
if not KlapptDas2 then
Exit(False);
if not KlapptDas3 then
Exit(False);
if not KlapptDas4 then
Exit(False);
Forum: Object-Pascal / Delphi-Language
Delphi
by Uwe Raabe,
9. Okt 2020
Ich denke, da geht es eher darum das Result als lokale Variable zu missbrauchen. Das hat aber eher was mit Performance zu tun als mit gutem oder schlechtem Programmierstil.
Forum: Object-Pascal / Delphi-Language
Delphi
by Uwe Raabe,
9. Okt 2020
Wieso? Ich sehe da keinen möglichen Code-Path, der die Funktion ohne Setzen von Result verlässt.
Forum: Object-Pascal / Delphi-Language
Delphi
by Uwe Raabe,
8. Okt 2020
Hier geht es:
function MyFunc(Value: Integer): Integer;
begin
if Value = 1 then
Exit(1);
if Value = 2 then
Exit(2);
end;
Forum: Object-Pascal / Delphi-Language
Delphi
by Uwe Raabe,
8. Okt 2020
Das Exit springt aber doch an das end der Function. Dort kannst du doch den Haltepunkt setzen.