Zugriff auf eingene Objekte in ArrayList
-
Hy,...
ich schriebe gerade an einer WindowsFormsAnwendung.
In dieser habe ich eine eigene Klasse Auto erstellt. Darin gibt es momentan nur 2 int Variablen x und y. Später sollen noch mehrere Variblen dazu kommen, vllt auch andere Typen. In der form1 kann ich das Objekt auch erstellen und auf beide Werte zugreifen:Auto ^car = gcnew Auto(10,20); //Konstruktor dafür angelegt.
Jetzt möchte ich eig dieses Objekt in eine ArrayList einfügen:
ArrayList ^al = gcnew Arraylist();
al->Insert(0,car);Es sollte doch jetzt auf al[0] das objekt car liegen mit seinen 2 variablen x=10, y=20.
Jedoch finde ich keine Möglichkeit korrekt auf die Elemente zuzugreifen. Ich hoffe mir kann jemand bei diesem Problem helfen.
Vielen Dank;)
LG...
-
In der
ArrayList
sind alle Elemente sozusagen alsObject
gespeichert. Du möchtest jedochAuto
s haben, dafür gibt es zwei Möglichkeiten:- Konvertieren von Object^ nach Auto^:
((Auto^)al[0])-> ...
- Generische Klassen nehmen: List<Auto>
- Konvertieren von Object^ nach Auto^:
-
Vielen Dank für deine Hilfe
genau das was ich brauchte. Das konvertieren ist die Lösung. Endlich das Problem überwunden an dem ich leider schon seit Stunden hänge. Danke nochmals
Ciao
LG
-
FellowTom schrieb:
Das konvertieren ist die Lösung.
nein - Generics ist sauberer ... Deine ArrayListe kann alle möglichen Typen speichern ... wenn Du es aber dann castest, kann es knallen