Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Wie erstellt man ein TObjectDictionary?
hydemarie - Di 16.06.20 18:44
Titel: Wie erstellt man ein TObjectDictionary?
Sehr kurzer Ausriss aus meinem aktuellen Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18:
| unit MainUnit;
type TTranslateDictionary = TObjectDictionary<string, String>;
var transTable: TTranslateDictionary;
implementation
procedure FillTransTable; begin transTable := TTranslateDictionary.Create([doOwnsValues]); end; |
FillTransTable aufzurufen wirft mir aber jedes Mal einen Fehler: "Ungültige Typumwandlung". Das passiert eindeutig in dem, was oben Zeile 16 ist. Spannende Frage an dieser Stelle: Warum?
jaenicke - Di 16.06.20 19:15
hydemarie hat folgendes geschrieben : |
Delphi-Quelltext 1: 2: 3:
| type TTranslateDictionary = TObjectDictionary<string, String>; | |
Fällt dir etwas auf?
// EDIT:
Das siehst du im Debugger allerdings eigentlich auch gleich...
hydemarie - Di 16.06.20 19:22
Ist mit zweimal "String" und zweimal "string" immer noch dasselbe. (Aber ja, das hatte ich nicht bedacht. Zu viel Go in letzter Zeit...)
edit: oder gehen Zeichenketten gar nicht?
jaenicke - Di 16.06.20 20:52
hydemarie hat folgendes geschrieben : |
edit: oder gehen Zeichenketten gar nicht? |
Strings sind keine Objekte! Deshalb funktioniert das mit
OwnsObjects natürlich nicht.
Ein normales
TDictionary<string, string> geht...
Moderiert von Th69: Delphi-Tags hinzugefügt
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!