Hallo,
Automatismen sind schön und gut, aber manchmal können Null-Werte einer Variablen numerische Probleme bei den nachfolgenden Berechnungen verursachen. Daher verwende ich nach / anstelle
ZeroMemory(@MyRecord,SizeOf(MyRecord));
oder
Result:= Default(MB_Record);
oder
FillChar(Result, SizeOf(Result), 0);
etc. stets eigene Proceduren, die die kritischen Variablen auf "ungefährliche" oder "sinnlose" Werte setzt. Dazu habe ich für die meisten Datentypen eine überladene Funktion namens
Sinnlos deklariert, die den jeweiligen Variablen die passenden Werte zuweist:
Delphi-Quellcode:
Function Sinnlos: Extended; Overload;
Begin
Result:= ... ; // wie +/-Unendlich, NaN, negativ, MaxExtended etc.
End;
Gruß, Andreas