Frage zu list::erase



  • Angenommen ich hab so eine Liste:

    list<MyClass*> foo;

    Da stopf ich jetzt etwas rein, ungefähr so:

    foo.push_back(new MyClass());

    jetzt iterier ich freudig durch die Gegend und irgendwann will ich ein Element löschen, ungefähr so:

    foo.erase(myIt);

    Wird dann nicht nur das Element aus der Liste gelöscht, sondern auch das ganze Objekt?

    Anders gefragt: Ruft die Liste für mich delete MyClass auf oder muss ich das selbst erledigen??

    Falls letzteres der Fall ist, wäre dann

    delete (*myIt);
    foo.erase(myIt);

    richtig?



  • selbst machen.


Anmelden zum Antworten