Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
Delphi 12 Athens
|
AW: 'Ungültiges Argument zum Codieren des Datums'
5. Nov 2020, 18:55
Diese Schleife ist meistens "endlos".
DayOfTheMonth (1-31) ist bei 50% der Monate immer kleiner als als DaysInTheMonth+1 (32) des Start-Monats und somit gibt es keinen Abbruch und läuft ewig.
Februar als Start ist das Einzige, wo es immer zum Ende des nachfolgenden Monats abbrechen wird.
endlos/ewig ... OK, zumindestens so lange wie das Datum gültig ist, also nach dem 31.12.9999 knallt es dann doch.
Im Debugger hätte dir aber schnell auffallen sollen, dass diese Schleife zu viele Durchläufe hat ... spätestens als es nach etwa 416376 Runden dann knallte.
Vielleicht solltest du für deine Schleifen das Ende eher mit EndOfAMonth/EndOfTheMonth bzw. EndOfAWeek/EndOfTheWeek und IncMonth bzw. IncWeek bestimmen.
Und den Anfang mit StartOfAMonth/StartOfTheMonth bzw. StartOfAWeek/StartOfTheWeek.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
Geändert von himitsu ( 5. Nov 2020 um 19:14 Uhr)
|