container vergleichen
-
hallo,
mein lehrbuch sagt, für listen ist == definiert. ich hab eine liste von sets
(für die == auch def. ist), warum funktioniert dann folgendes nicht?list< set<int> > a; list< set<int> > b; //...füllen von a und b if(a==b){ //.. }
muss ich also selbst von hand (mit iteratoren) vergleichen?
zweite frage:
wo finde ich informationen, wie stdl elemente genau funktionieren,
z.b. ob a==b von der reihenfolge der elemente abhängt u.ä.grüße,
raphael
-
Hi,
hier findest sozusagen die Ur-Dokumentation.
http://www.sgi.com/tech/stl/
-
vielen dank, genau das habe ich gesucht.
eins noch:
ich habe eine Klasse, die oben erwähnte liste von sets enthält und möcht eine
methode getIterator schreiben, die mir einen Iterator auf diese sets zurückgibt, aber irgedwie klappt das mit den Typen nicht? wie geht das?
-
versuch es mal so
private: typedef std::list<Element> List; List m_list; public: typedef List::iterator Iterator; typedef List::const_iterator CIterator; Iterator GetIterator() { return m_list.begin(); } CIterator GetIterator() const { return m_list.begin(); }
-
funktioniert hervorragend! Danke.