000
05.12.2008, 13:49 Uhr
~Seikilos
Gast
|
Ich habe den folgenden Code
C++: |
for(std::list<foo>::iterator iter = foos.begin(); iter!= foos.end(); ++iter) { // Benötige das foo vor dem aktuellen iter foo * meinfoo = &*iter-1; }
|
Dies liefert mir keine Fehlermeldung, aber ich bin gerade überhaupt nicht sicher, ob das so funktioniert? Kann ich so den Vorgänger aus einer list bekommen? Eigentlich ja nicht, weil die double linked sind, richtig? wie bekommeich dann den vorgänger? list hat ja keinen [] accessor.
Und es muss eine liste sein, weil ich gewährleisten muss, dass die Adresse eines elements immer gleich bleibt |