C++/Iteratory: Różnice pomiędzy wersjami

Usunięta treść Dodana treść
Lethern (dyskusja | edycje)
poprawki
Linia 147:
int main ()
{
// tworzymy i inicjujemy nowa listelistę znakowznaków
list<char> lista;
lista.push_back('a');
Linia 153:
lista.push_back('c');
 
// i wyswietlamywyświetlamy ja w petlipętli do przodu
list<char>::iterator it;
cout<<"lista po kolei: ";
Linia 168:
}
 
// znow wyswietlamywyświetlamy listelistę - teraz przy pomocy odworconegoodwróconego iteratora
list<char>::reverse_iterator it2;
cout<<"\nLista od tylu z odwroconymodwróconym iteratorem: ";
for( it2=lista.rbegin(); it2!=lista.rend(); it2++ )
{
Linia 181:
Wynikiem działania programu będzie:
lista po kolei: a b c
lista od tylu: a c b
lista od tylu z odwroconymodwróconym iteratorem: c b a
 
Przykład ten pokazuje nam dlaczego do przeglądania kontenera od końca należy używać iteratora odwróconego. Wyświetlenie elementu równego <tt>lista.end()</tt> przyniosło niespodziewany skutek - losowy symbol spoza naszej listy.
 
W liście jednokierunkowej nie mamy już tak szerokiego zakresu działania na iteratorach. Funkcje begin() i end() zwracają wartości iteratora (jednokierunkowego) „do przodu”, zaś odwrotny iterator wcale nie istnieje.
 
 
===Zbiory===