Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.199 Beiträge
 
Delphi 12 Athens
 
#7

AW: Objekt in Liste mit anderer Instanz ersetzen ohne Referenz zu verlieren

  Alt 7. Feb 2023, 10:39
Anders geht es nunmal nicht (effektiv).

Man kann ab TPersistent vererben und dort das Streaming missbrauchen
oder via RTTI alles suchen und kopieren.




Bei sowas, wo man etwas mal vergessen könnte, kann man auch
{$IF SizeOf(TMyRecord) <> 123} {$MESSAGE Error '...'} {$IFEND}

Bei Klassen ist das leider nicht ganz so einfach, direkt im Compiler, daher wohl eher
if Self.InstanceSize <> 123 then raise ...;
[edit] Kannst auch mal nachsehn, wo sich die InstanceSize in der TypeInfo versteckt.

Das in dein Assign und 123 auf den aktuellen Wert setzen.
-> neues Feld = Peng
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 7. Feb 2023 um 10:50 Uhr)
  Mit Zitat antworten Zitat