Forum: Algorithmen, Datenstrukturen und Klassendesign
by Uwe Raabe,
20. Nov 2014
Um das nochmal deutlich zu machen: Das Problem taucht bei der Kombination von TJON und TList<T> auf. Die aktuelle Implementierung des JSON-Marshaling stellt bestimmte Anforderungen an die zu konvertierenden Klassen, die von TList<T> (noch) nicht erfüllt werden.
Es ist halt schon immer so gewesen, daß die einfachen Lösungen nur für einen Teil der Anwendungsfälle funktionieren. Für die übrigen...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Uwe Raabe,
20. Nov 2014
Zwei Dinge konnte ich feststellen:
1. Der abstrakte Fehler kommt, weil der arrayManager mit im JSON-String steht. Dadurch wird beim Konvertieren in das Objekt eine TArrayManager instantiiert, obwohl dies nur die abstrakte Klasse ist.
2. Das inherited in TObjectsEntries.create und TObjectsTEntry.create ruft TList<T>.Create auf und nicht TObjectList<T>.Create. Dadurch wird OwnsObjects nicht...
Forum: Algorithmen, Datenstrukturen und Klassendesign
by Uwe Raabe,
19. Nov 2014
Das hat wohl keine Relevanz, aber das Property SecondClassEntries verweist auf das falsche Feld.