Witam to znowu ja.
Nowy program nowy problem :D ale są postępy.
A więc piszę sobie funkcję która ma sortować krótką listę. Problem jest taki że lista zawiera obiekty. i ma być sortowana według składnika obiektu który jest nr. ID. Wymyśliłem to tak że pętla szuka największego ID w liście i przerzuca ten obiekt do drugiej listy a z tej przeszukiwanej go usuwa.
Wszystko było by ok gdyby nie to że element przerzucony nie zostaje usunięty. Moje pytanie dlaczego tak jest. I może znacie jakiś łatwiejszy sposób żeby to wykona??
void ListaUzytkownika::sortuj_ID()
{
DaneUzytkownika szukany;
list<DaneUzytkownika>::iterator iter;
list<DaneUzytkownika>::iterator najwiekszy;
while(lista.empty()!=true)
{
for( iter=lista.begin(); iter != lista.end(); ++iter )
{
if(szukany.Id<iter->Id)
{
szukany=*iter;
najwiekszy=iter;
}
}
cout<<szukany;
posortowana.push_front(szukany);
lista.erase( najwiekszy );
cout<<lista.size()<<endl;
}
Pomożecie?