Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
Delphi 12 Athens
|
Re: Checken ob ein Record daten enthält?
4. Jan 2010, 08:54
Im Notfall kann man auch die Compilermagic und ihre automatischen Initialisierungen ausnutzen.
Einfach einen zusätzlichen "Marker"-String (AnsiString, WideString, UnicodeString ... aber keinen ShortString) oder ein Interface (String ist aber einfacher) in dem Record definieren.
Sobald man Werte zugewiesen hat, wird der String auf '*' (oder irgendwas Anderes) gesetzt.
Leert man den ecord, dann String auf '' setzen.
Und dann kann man über String <> '' prüfen, ob es schon was drinnen ist.
Bei allen anderen Prüfungen wie CompareMem und Co. muß man den Record vorher immer selber initialisieren.
(aber wenn man immer selber passend initialisiert/befüllt, dann ist es so auch vollkommen OK)
PS: Man kann auch einfach "nur" prüfen, ob bestimmte Daten im Record vorhanden sind und wenn nicht, dann ist nichts drin.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
|