003
18.06.2004, 14:10 Uhr
RHBaum
|
1. ich wuerd nen typedef machen ....
typedef std::list<CCity*> CityListT;
2. ich wuerd keinen Zeiger auf die liste, sondern ne referenz nehmen ...
C++: |
hit_t* CRaster::getStadtInFeld(CityListT & rList,double xi,double yi) { }
|
3. der iterator sollt dann einfach gehen
C++: |
hit_t* CRaster::getStadtInFeld(CityListT & rList,double xi,double yi) { CityListT::iterator it = rList.begin(); }
|
4. wenn die Liste ned veraenderst, sondern nur drinrumsuchst, mach sie const
C++: |
hit_t* CRaster::getStadtInFeld(const CityListT & rList,double xi,double yi) { CityListT::const_iterator it = rList.begin(); }
|
5. iteratoren bekommt man nur auf bestimmten positionen. Also man gibt nen einsprungspunkt an, und kann mit dem erzeugten Objekt(iterator) navigieren. also find, upper, lower, begin, end ... und noch mehr, sowie manche funktionen die deine list manipulieren geben dir auch iteratoren zurueck. Ohne eine konkrete Position ist nen iterator aber wertlos, also nur nen platzhalter, wie nen unitialisierter zeiger halt.
Ciao ... |