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

C++ Discussion :

destruction d'un objet


Sujet :

C++

  1. #41
    Membre averti Avatar de vdumont
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    510
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 510
    Points : 369
    Points
    369
    Par défaut
    La raison pour laquelle je clear coord est que j'utilise ce même vecteur pour d'autres coordonnées plus bas (segments, triangles, tétraèdres)

    Donc au lieu de créer un 2ieme vecteur je reprend le même en le vidant.

  2. #42
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    Citation Envoyé par b Oo
    Si j'ai bien compris, essaye (si tu ne l'as pas déjà fait) de faire un delete sur coord dans readFile.
    un delete sur une variable allouée dans la pile !?

  3. #43
    Membre averti Avatar de vdumont
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    510
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 510
    Points : 369
    Points
    369
    Par défaut
    Swoog il y avait bel et bien un moyen d'utilier mes MG_NOEUDS sans faire de new


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    MG_MAILLAGE *mai = m_fichier->get_mg_maillage(i);
     
         /* Extraire noeuds */
         for (unsigned int j = 0 ; j < mai->get_nb_mg_noeud() ; j++) {
             MG_NOEUD* no = mai->get_mg_noeud(j);
     
         //...

  4. #44
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    lol

    le problème est qu'on ne sait pas vraiment comment est alloué ce pointeur...

    fait bien attention à ce qu'il n'y ait pas de comportement étrange ou du fuite de mémoire dans ton application, sinon il te faudra te repencher sur ce bout de code

  5. #45
    Membre averti Avatar de vdumont
    Profil pro
    Étudiant
    Inscrit en
    Février 2006
    Messages
    510
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2006
    Messages : 510
    Points : 369
    Points
    369
    Par défaut
    Je vais faire gaffe

  6. #46
    Membre habitué Avatar de b Oo
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    179
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 179
    Points : 185
    Points
    185
    Par défaut
    Citation Envoyé par Swoög
    un delete sur une variable allouée dans la pile !?
    Salut Swoög,
    je ne vois pas où est le problème, tu as un vecteur qui contient des pointeurs, donc comme tu alloues dynamiquement tu fais un delete sur ces pointeurs, et ca vire le contenu pointé par le pointeur.

    Soit j'ai raté un épisode, soit ma phrase était mal formulée.

    b Oo

  7. #47
    Expert éminent
    Avatar de Swoög
    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    6 045
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 6 045
    Points : 8 339
    Points
    8 339
    Par défaut
    comme tu pourra le voir dans le code de vdumont si tu le regardes attentivement, tu verrais que coord est alloué dans la pile (par opposition aux variables allouées dans le tas qui sont créées avec new) on ne libère JAMAIS les variables allouées dans la pile, elles sont libérées automatiquement à la fin de leur portée...

Discussions similaires

  1. [c#]Comment forcer la destruction d'un objet précédemment créé?
    Par Jayceblaster dans le forum Windows Forms
    Réponses: 5
    Dernier message: 24/07/2009, 15h29
  2. Réponses: 2
    Dernier message: 13/10/2007, 02h55
  3. [C#] destruction d'un objet
    Par legillou dans le forum Windows Forms
    Réponses: 3
    Dernier message: 26/06/2006, 12h19
  4. Réponses: 1
    Dernier message: 09/07/2005, 19h16
  5. Réponses: 14
    Dernier message: 02/03/2005, 19h15

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