hallo tweakerts,
ik probeer een list met als inhoud een aantal pointers weg te gooien dmv delete. Even een voorbeeldje schetsen:
Zoals je kunt zien, bevat het list object nu 2 pointers naar objecten. Mijn vraag is dus: als ik het myList object zo delete, worden dan automatisch de pointers die hij heeft ook verwijderd of moet ik dat handmatig doen?
Ik kon er op google zo snel niet iets over vinden..
Ik heb wel een donkerbruin vermoeden dat ik het handmatig moet doen, maar ik wil het toch graag even zeker weten
alvast bedankt!
ik probeer een list met als inhoud een aantal pointers weg te gooien dmv delete. Even een voorbeeldje schetsen:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| #include <list> using namespace std; void main() { list<A*>* myList = new list<A*>[10]; // in mn eigen prog heb ik die 10 natuurlijk variabel ;) // Even objecten dr in list.push_back(new A()); list.push_back(new A()); ... // Klaar met gebruik, verwijder delete myList; } |
Zoals je kunt zien, bevat het list object nu 2 pointers naar objecten. Mijn vraag is dus: als ik het myList object zo delete, worden dan automatisch de pointers die hij heeft ook verwijderd of moet ik dat handmatig doen?
Ik kon er op google zo snel niet iets over vinden..
Ik heb wel een donkerbruin vermoeden dat ik het handmatig moet doen, maar ik wil het toch graag even zeker weten
alvast bedankt!