Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.415 Beiträge
 
Delphi 7 Professional
 
#13

AW: Tagesanzahl Februar eines Jahres

  Alt 11. Dez 2020, 17:13
Geht aber kürzer Days := IfThen(IsLeapYear(Year),29,28);
Wow!
Diese neuere Kurzform IfThen trägt nicht unbedingt zur Übersichtlichkeit bei. Es ist eher fehleranfällig als gut, daher würde ich es persönlich nicht benutzen. Intern sind die beiden Befehle sicherlich identisch.
Andreas
Was ist daran fehleranfällig?

Wenn ich beim Programmieren nicht aufpasse, mache ich Fehler.

Beim Aufruf einer derartigen Funktion mit 'nem Rückgabewert ist (zumindest bei mir) die Fehlerhäufigkeit nicht höher, als bei beliebigen anderen Funktionen mit mehreren Parametern und 'nem Rückgabewert.

Und das IfThen 'ne neuere Kurzform ist, halt' ich für 'n Gerücht. Mein olles Delphi 7 aus dem Jahr 2002 enthält diese Funktionen in den Units Math und StrUtils. Die neuere Kurzform ist also erst / mindestens 18 Jahre alt und damit volljährig und darf wählen sowie gewählt werden. Ich wähle sie

Und wenn sich wer an dem If Then stört:
Delphi-Quellcode:
case IsLeapYear(Year) of
  true : Days := 29;
  false : Days := 28;
end;
Oder ginge es auch so? Days := 28 + Ord(IsLeapYear(Year));

Geändert von Delphi.Narium (11. Dez 2020 um 17:44 Uhr) Grund: Schreibfehler
  Mit Zitat antworten Zitat