Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » [denkfehler] list iterator gibt reihefolge komisch aus

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
14.04.2004, 19:48 Uhr
~T-Sam[Hawk]
Gast


bitte nicht hauen, wenn ich nerve....
ich möchte ne liste mit der sdl erstellen die auf objecte zeigt
an sich hab ich dasauch hinbekommen

C++:
class foo
{
public:

  int Data;
};

int main(){
list<foo*> fooList;
foo *fooData=new foo;

fooData->Data = 1;
fooList.push_back(fooData);
fooData->Data = 2;
fooList.push_back(fooData);
fooData->Data = 3;
fooList.push_back(fooData);


// Nun will ich den Eintrag der die 3 enthält z.B. duch eine 2 ersetzen

list<foo*>::iterator iter=fooList.begin();
printf("ausgabe aller werte\n");
while(iter != fooList.end())
{
    printf("WERT:%i\n",(*iter)->Data);
iter++;
}

printf("lösche wert\n");
iter=fooList.begin();
while(iter != fooList.end())
{
if ((*iter)->Data == 3)
{
     printf("Lösche WERT:%i\n",(*iter)->Data);
   iter = fooList.erase(iter);
}
   iter++;
}
printf("ausgabe aller werte\n");
iter=fooList.begin();
while(iter != fooList.end())
{
printf("WERT:%i\n",(*iter)->Data);
   iter++;
}
getch();
return 0;
}


er gibt mir immmer 3 aus...why?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.04.2004, 22:17 Uhr
(un)wissender
Niveauwart


Na ja, du weist fooData->Data zwar 1-3 zu, überschreibst diesen Wert mit dem folgendem aber immer wieder. Als letztes halt drei...
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: