Witajcie drodzy forumowicze,
posiadam tak prosty i krótki fragment kodu programu]
for (c=liczby.begin(); c!=liczby.end(); ++c){
cout << *c << ". "; //!!!!!!!!!!!!!!!!
if(*c/2>5)
liczby.erase(*c);
}
, który jest dla mnie niezwykle uciążliwy. Przy wypisaniu całości zbioru przed operacją usuwania wszystko jest jak należy i zbiór jest kompletny bez "śmieci". Po usunięciu jakiegoś elementu zbioru w zaznaczonym miejscu wypisuje mi dziwnie duże liczby, których nigdy nie dodałem do zbioru i nie wiem skąd się wzięły, a skoro ich nie ma w zbiorze powstaje błąd. Wiecie co może być przyczyną? Proszę o pomoc...