Gå til innhold

[Løst] reverse_iterator til iterator


Gjest Slettet-Pqy3rC

Anbefalte innlegg

Gjest Slettet-Pqy3rC

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.

Lenke til kommentar
Videoannonse
Annonse
Gjest Slettet-Pqy3rC

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);

Lenke til kommentar

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...