Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 21

Discussione: [C++] distruttori

  1. #1

    [C++] distruttori

    Ciao a tutti,

    avrei un chiarimento da chiedere in merito alla gestione della memoria heap in C++.

    Io so che per ogni istruzione del tipo "Object* o = new Object(..)" deve corrispondere una "delete o", in modo che la memoria puntata da o venga liberata nell'heap.

    Mettiamo il caso che abbia creato una struttura dati (una list o un set) che contiene dei puntatori a vari oggetti creati (mediante "new") nel corso dello svolgimento di un programma. Nel momento in cui effettuo una chiamata del tipo "list.clear()" posso stare tranquillo che la memoria occupata dagli oggetti istanziati venga effettivamente liberata ? Oppure questa chiamata si limita ad azzerare solo i puntatori, quindi perdo i riferimenti agli oggetti puntati nell'heap e questa memoria è sprecata ?

    Grazie,
    Alessandro

  2. #2

  3. #3
    Utente di HTML.it L'avatar di indre
    Registrato dal
    Jan 2002
    Messaggi
    2,735

    re

    Io cambio canale







    io c'ero!
    When I was young I used to pray for a bike. Then I realized that God doesn't work that way. So I stole a bike and prayed for forgiveness.

  4. #4
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

  5. #5
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,357

    Re: [C++] distruttori

    Originariamente inviato da xxxAlex83xxx
    Ciao a tutti,

    avrei un chiarimento da chiedere in merito alla gestione della memoria heap in C++.

    Io so che per ogni istruzione del tipo "Object* o = new Object(..)" deve corrispondere una "delete o", in modo che la memoria puntata da o venga liberata nell'heap.

    Mettiamo il caso che abbia creato una struttura dati (una list o un set) che contiene dei puntatori a vari oggetti creati (mediante "new") nel corso dello svolgimento di un programma. Nel momento in cui effettuo una chiamata del tipo "list.clear()" posso stare tranquillo che la memoria occupata dagli oggetti istanziati venga effettivamente liberata ? Oppure questa chiamata si limita ad azzerare solo i puntatori, quindi perdo i riferimenti agli oggetti puntati nell'heap e questa memoria è sprecata ?

    Grazie,
    Alessandro
    e perche' posti in OT?

  6. #6
    Utente bannato
    Registrato dal
    Jun 2003
    Messaggi
    3,357
    chi si spoglia?

  7. #7
    minchia pensavo di aver scritto in Programmazione...

    Spostate o chiudete ? (Nel qual caso devo riscrivere il thread nell'apposita sezione)

    sorry

  8. #8
    L'ho visto anche io.....
    L'ho visto anche io.....
    L'ho visto anche io.....

    Sono riuscito a vedere un tennico...

    A tutti i COBOL-isti/CICS-isti/DB2-isti come me: l'adunanza è iniziata; ne resterà soltanto uno.
    È meglio bruciare subito, che spegnersi lentamente.

    Per fare un fumetto di successo ci voglio le tre "A": Azione - Avventura - Atette
    Ratman

  9. #9
    Originariamente inviato da xxxAlex83xxx
    minchia pensavo di aver scritto in Programmazione...

    Spostate o chiudete ? (Nel qual caso devo riscrivere il thread nell'apposita sezione)

    sorry
    Non credo lo spostino, ti conviene riaprirlo.
    il tempo si fa i fatti suoi

  10. #10
    Ripostato nell'apposita sezione...

    Scusate il disagio

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.