|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Mar 2011
Messaggi: 1050
|
[c++] distruzione vector e list
Ho un dubbio...
Serve distruggere un vector o una list? Magari nel distruttore Se si come? Il metodo clear() pulisce ma non distrugge. Si potrebbe fare un for e delete per ogni elemento? |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Mar 2011
Messaggi: 1050
|
Cioè per un puntatore *p basta deallocare con delete p;
Per un array dinamico v [] basta deallocare con delete [] v; E per un vector o una list?? Avviene tutto in automatico!? |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Mar 2011
Messaggi: 1050
|
Ah ok ... Quindi non necessita la deallocazione con delete nè un vector né una list!
|
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: May 2005
Città: Trieste
Messaggi: 2284
|
no, non serve
i container std sono strutture a dimensione dinamica fatte apposta per ovviare il problema della gestione manuale della memoria: tu aggiungi e togli elementi, senza doverti preoccupare di fare le (de)allocazioni necessarie, sarà il container internamente a gestirsi il tutto occhio però, se all'interno del vector o della lista salvi dei ptr, questi si li devi distruggere, ma credo sia ovvio ![]()
__________________
neo mini v2 / asus strix z490i / 10600k@? / uh12s / rx6700xt / 32gb ddr4@3200 / sandisk 250 + asenno 1tb / lenovo g34w
trattative concluse : tante... |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Mar 2011
Messaggi: 1050
|
Quote:
Cioè? Puoi farmi un esempio? |
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Mar 2011
Messaggi: 1050
|
Tipo vector<string*> v;
Dovrei deallocare ogni string?? |
![]() |
![]() |
![]() |
#7 |
Senior Member
Iscritto dal: Oct 2005
Messaggi: 3306
|
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:42.