View Single Post
Old 03-08-2007, 14:30   #3
Ufo13
Senior Member
 
L'Avatar di Ufo13
 
Iscritto dal: Nov 2005
Messaggi: 1545
non capisco bene il tuo codice, scusa.

Come popoli il vettore? Devi farci vedere anche quella parte.

Comunque il vettore appena esce dallo scope invoca i distruttori di tutti i tuoi shared_ptr, decrementando i loro counter.

Se ricordo bene il reference counter di uno shared_ptr incrementa quando invochi il copy constructor o l'assignement operator di shared_ptr.

Se riempi il vettore con questo codice, per esempio:

Codice:
vettore.push_back(boost::shared_ptr<Pippo>(oggettoPippo));
Oppure, se si puo` fare, non ricordo

Codice:
vettore.push_back(oggettoPippo);
Ti andrebbe a cancellare sicuramente l'oggetto una volta che vettore viene distrutto.
Ufo13 è offline   Rispondi citando il messaggio o parte di esso