Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

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

  Alt 7. Feb 2023, 11: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
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

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