IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Programmation avec Qt : allocation dynamique, constructeur et destructeur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    tlt
    tlt est déconnecté
    Membre confirmé Avatar de tlt
    Homme Profil pro
    Programmeur
    Inscrit en
    Juillet 2004
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Programmeur
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 205
    Par défaut Programmation avec Qt : allocation dynamique, constructeur et destructeur
    Salut.
    Je suis un débutant et je programme récemment avec QT (sous Linux) pour approfondir ma connaissance en C++.
    Ma question est la suivante
    Pourquoi quand on fait un new , on omet le delete qui va avec.
    Est ce qu'on ne risquerait pas d'avoir une perte de mémoire?
    Merci de bien vouloir répondre à ma question.


  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    36
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 36
    Par défaut
    Normalement tu dois toujours faire un delete apres un new.

    Ton exepmle est un peu vague pour dire autre chose

  3. #3
    Membre émérite Avatar de homeostasie
    Homme Profil pro
    Inscrit en
    Mai 2005
    Messages
    939
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 939
    Par défaut
    Pourquoi quand on fait un new , on omet le delete qui va avec
    Il ne faut pas l'omettre!

    Est ce qu'on ne risquerait pas d'avoir une perte de mémoire?
    Je ne parlerais pas dans ce cas de perte ou fuite de mémoire mais d'occupation mémoire inutile puisqu'on ne la libère pas pour l'utiliser autrement.

    Un exemple de fuite mémoire est le débordement de l'espace mémoire alloué ( tableau mal dimensionné).

  4. #4
    Rédacteur

    Avatar de Matthieu Brucher
    Profil pro
    Développeur HPC
    Inscrit en
    Juillet 2005
    Messages
    9 810
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur HPC
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2005
    Messages : 9 810
    Par défaut
    Lorsqu'on fait un new avec Qt, on lui indique son parent si l'objet hérite de QObject. si tel est le cas, c'est l'objet parent qui gère sa destruction. Dans tous les autres cas, il y a un delete.
    C'est un peu comme un pointeur intelligent, mais différent tout de même

  5. #5
    Expert confirmé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2003
    Messages
    3 549
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 549
    Par défaut
    Je ne parlerais pas dans ce cas de perte ou fuite de mémoire mais d'occupation mémoire inutile puisqu'on ne la libère pas pour l'utiliser autrement.
    C'est pourtant ça la définition d'une fuite mémoire.

    Un exemple de fuite mémoire est le débordement de l'espace mémoire alloué ( tableau mal dimensionné).
    Ça c'est un buffer overflow.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Allocation Dynamique de Memoire Avec Operateur New
    Par msstaf dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/06/2006, 15h49
  2. Membres statics avec allocation dynamique
    Par b Oo dans le forum C++
    Réponses: 4
    Dernier message: 07/05/2006, 17h13
  3. Réponses: 9
    Dernier message: 22/12/2005, 22h20
  4. Pb d'allocation dynamique avec malloc
    Par Magicmax dans le forum C
    Réponses: 5
    Dernier message: 12/12/2005, 01h04
  5. [prog dynamique]Constructeur avec type primitif
    Par -=Spoon=- dans le forum Langage
    Réponses: 2
    Dernier message: 16/12/2004, 10h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo