Löschen von Objecten innerhalb eines Containers

  • Löschen von Objecten innerhalb eines Containers

    Moin,

    ich habe hier mal eine Frage bzgl. des freigeben von Speicherplatz.
    Normal gebe ich ja Speicher mit delete wieder frei, z.B:

    Quellcode

    1. ANYTYP *ptr = new ANYTYP();
    2. delete ptr;


    wie lösche ich den aber innerhalb eines Containers, z.B. 'ner Map:

    Quellcode

    1. typedef map<int,ANYTYP* > t_map;
    2. typedef t_map::const_iterator i_map;
    3. int main (void)
    4. {
    5. t_map EXAMP;
    6. EXAMP.insert(make_pair(2,new ANYTYP()));
    7. }


    Kann ich da denn durchiterieren und z.B: sowas nehmen:

    Quellcode

    1. i_map exi = EXAMP.begin();
    2. delete exi->second;


    oder wie wird sowas richtig gelöscht?

    Danke und Gruß
    Thomas
    Murphy war ein Optimist.