Wie ist es möglich, in Delphi Objekte zu kopieren (spiegeln). Eine Zuweisung
referenziert nur das Objekt.
Danke im voraus
Robert
Hey Robert,
>Wie ist es möglich, in Delphi Objekte zu kopieren (spiegeln). Eine Zuweisung
>referenziert nur das Objekt.
normalerweise enthält jedes Objekt die Methode ASSIGN. Erzeuge eine
neue Instanz vom Objekt und übergebe das zu kopierende Objekt in
Assign.
function CopyObject( TRefObj:TPersistent ):TPersistent;
BEGIN
Result:=TRefObj.Class.Create;
Result.Assign( TRefObj );
END;
So in etwa müsste es gehen. Allerdings habe ich das nicht getestet.
Kann auch sein, dass die 1. Zeile nicht geht. Dann muß man sich die
Klasse über FindClass( TRefObj.ClassName) heraussuchen.
HTH
Hans-Werner
--
H.-W. Schmidt - Individuelle Software-Erstellung
"Man muß nicht erst in die 10. Klasse gehen, um Objekte
zu verstehen..."