Gjest Slettet-Pqy3rC Skrevet 7. februar 2012 Skrevet 7. februar 2012 Gjør om noe kode til å benytte STL containers istedenfor den noe merkelige teknikken som er benyttet der i dag. I den forbindelse dukket det opp en artig liten ting. Alle container.erase() metodene ser ut til kun å benytte iterator og ikke reverse_iterator. Jeg har halveis forstått at x.erase() kan kalles via reverse_iterator.base(), men om noen hadde lagt en smule forklaring inn i denne tråden ville jeg blitt glad.
oelbox Skrevet 7. februar 2012 Skrevet 7. februar 2012 Her er en grei gjennomgang av iteratorer fra dr. dobbs.
Gjest Slettet-Pqy3rC Skrevet 7. februar 2012 Skrevet 7. februar 2012 Ok, takk. Jeg har brukt dagen til litt gjennomgang og et noe forenklet resultat er dette; reverse_iterator til iterator typename std::vector< T >::const_reverse_iterator it_ir; it_ir = std::vector< T >::rbegin(); typename std::vector< T >::const_iterator it_i = it.base();it_i--; iterator til reverse_iterator typename std::vector< T >::const_iterator it_i; it_i = std::vector< T >::begin(); typename std::vector< T >::const_reverse_iterator it_ri(++it_i);
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå