Autor Beitrag
_TZ_
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Mi 21.05.08 21:24 
Hallo,

ich versuche folgendes:

ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
Dictionary<beliebiger Typ, beliebiger Typ> myDict = new Dictionary<beliebiger Typ, beliebiger Typ>();

myDict.add(12);
myDict.add(3"bla");
myDict.add("blu""foo");
myDict.add("blu2"4);


mit Generics scheint das nicht ohne Weiteres zu gehen, da für Platzhalter K und V (Dictionary<K, V> ... )jeweils die Datentypen expliziet angegeben werden müssen. Und als "beliebiger Typ" obecjt zu verwenden erzeugt bei der Interation durch das Dictionary in der foreach-Schleife einen compiler-error. D.h. Generics und der Typ object scheint für mein obiges Beispiel evtl. nicht die richtige Lösung zu sein, bzw. nur realisierbar mit großem Aufwand.

Es muss doch in C# eine Möglichkeit bestehen Dictionaries mit beliebigen Datentypen zu füllen?! Kann mir dies bzgl. jemand weiter helfen, Tipps geben etc. ?

Danke vorab!

Moderiert von user profile iconChristian S.: Code- durch C#-Tags ersetzt
Christian S.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 20451
Erhaltene Danke: 2264

Win 10
C# (VS 2019)
BeitragVerfasst: Mi 21.05.08 21:28 
Hallo und :welcome:!

Es sollte mir einer HashTable gehen (ich hoffe, ich erinnere mich da richtig).

ABER: Du verlierst alle Vorteile von Generics, Du arbeitest dann absolut nicht typensicher und bezogen auf Value-Types wirst Du ein ständiges Boxing und Unboxing haben. Oft findet man, wenn man sich "zwingt" mit generics zu arbeiten, eine saubere Implementation.

Grüße
Christian

_________________
Zwei Worte werden Dir im Leben viele Türen öffnen - "ziehen" und "drücken".