Hallo Hagen
Schön, wieder mal Deine wertvolle Meinung zu lesen. Ich hoffe, es geht dir gut!
Bzgl. Deiner Lösung:
1.) Ich möchte ja keine visuellen Komponenten speichern. Deshalb sehe ich auch keine Ineffizienzen oder unnötige Speicherbelastung, wenn ich hergehe und jeder Objektklasse eine eindeutige ID zu deren Identfikation zuweise und diese direkt in der store-Routine "mitspeichere".
2.) Du schreibst "Classname + ClassTye": Wieso bitte beides speichern - oder handelt es sich beim "+" eigentlich um ein "oder"? Im Prinzip müsste es eigentlich ausreichen, wenn man lediglich vordefinierte IDs zu den Klassen speichert.
Ganz toll wäre dann wenn folgendes ginge:
Delphi-Quellcode:
Stream.Read(ClassArrayIdx,sizeof(ClassArrayIdx));
ClassInfoAry[ClassArrayIdx].Load(Stream);
ClaassInfoAry wäre ein Array von Klassentypen - evtl. sogar polymorph. Wie das Konstrukt aussehen müsste, das weiss ich nicht aber hast du sogar etwas in dies Richtung gemeint?
3.) Die genannte Library habe ich nicht gefunden aber wieso benötigt man diese. Wenn man den Klassennamen aus dem Array liest, dann lässt sich daraus ja direkt die entsprechende Referenz zum Objekt finden oder habe ich hier etwas falsch verstanden?
4.) Dein Ansatz finde ich allgemein eine sehr gute Lösung. Besonders gut finde ich, dass für abgeleitete Klassen ja eigentlich kein zusätzlicher Code geschriebene werden muss, z.B. wenn neue Klassen hinzu kommen.
Hoffe, alles richtig verstanden zu haben.
Beste Grüsse und nochmals vielen Dank für Deinen Input
Geri
Allg: Bei meinem Programm möchte ich auch Referenzen auf weitere Objekte speicheren. Ich behelfe mir dazu mit diversen IDs. Mich wundert es aber schon, dass Delphi hier nicht bereits ein mächtiges Konzept zur Verfügung stelltn...