Itterator
-
Hi,
ich habe eine Klasse, in der ich eine STL-Liste habe.
Ich möchte jetzt von außerhalb auf diese Liste mittels eines Itterators zugreifen. Wie muß ich da vorgehn.Die Liste wurde wie folgt erstellt:
class my { ... public: list<int> *mylist; mylist=new list<int>[5]; //5 int Listen hinter einem Pointer ... };
Außerhalb der Klasse will ich jetzt auf eine der Listen zugreifen, aber ich bekomme da immer die Meldung, daß kein Opperator definiert ist.
int i=0; my handle; list<int>::iterator itt; for( itt = handle.mylist[i].begin(); itt != handle.mylist[i].end(); itt++ ) { ... }
-
Du kannst den Iterator oder die Liste über eine Funktion zurückgeben:
const list<type> & GetList();
list<type>::const_iterator GetIterator();aber imho macht es wenig sinn eine liste mit new anzulegen.
da du über list<type>::push_back(type t) jederzeit neue elemente einfügen kannst.Devil
-
Ich wollte über das new hinter einem Pointer mehrer listen ablegen.
Da sollte es doch keine Probleme geben oder?
-
wieso machst du dann nicht ein
list<int*> mylist; //oder list< list<int> > myList;
Devil
-
Stimmt eigentlich.
(war mir sich in diesem Moment zu einfach
)