![]() |
Kopie statt Zeiger
Hallo,
wie erhalte ich eine Kopie eines Objekts, statt nur den Zeiger, wenn ich eine Klasse habe, die nicht von TPersistent abgeleitet ist? |
Re: Kopie statt Zeiger
Dazu brauchst du in der Regel einen Kopierkonstruktor, der das "alte" Objekt als Eingabe annimmt und daraus das aktuelle Objekt als Kopie erstellt.
|
Re: Kopie statt Zeiger
an sowas hab ich auch schonmal gedacht, aber hab gehofft es gäbe ne einfacherer lösung, wie zum beispiel in php nen eigenen operator... trotzdem danke!!
|
Re: Kopie statt Zeiger
Zitat:
in Delphi ist das Problem so gut wie unlösbar, weil das Objekt selbst wieder Objekte oder eben vielmehr Zeiger darauf enthalten kann - falls du dich entscheidest, auch davon nicht den Zeiger, sondern den Inhalt zu kopieren, müsstest du neue Instanzen anlegen, was garnicht geht - es sind keine Informationen über den Constructor verfügbar. Und zudem stellt sich die Frage rekursiv in der nächsten Stufe neu, bis du alle Zeiger aufgelöst hast. Gruss Reinhard |
Re: Kopie statt Zeiger
Zitat:
|
Re: Kopie statt Zeiger
True. Aber Assign gibt es erst ab TPersistent :)
|
Re: Kopie statt Zeiger
Zitat:
|
Re: Kopie statt Zeiger
Natürlich verbietet das niemand. Aber so wie ich die Frage verstehe geht es um die inhärente Möglichkeit einer einfachen Objektkopie. Und "einfach" schließt für ein erzwungenes Klassendesign oder sowas aus...
|
Re: Kopie statt Zeiger
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:56 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz