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 :

Problème de SEG FAULT avec vecteurs et itérateurs


Sujet :

C++

  1. #1
    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 Problème de SEG FAULT avec vecteurs et itérateurs
    Bonjour, voici le problème j'ai un vecteur de vecteur d'objets MG_NOEUD


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    std::vector<std::vector<MG_NOEUD*> > coord_noeuds;

    Par la suite j'essaie d'extraire les données et les desssiner en OpenGL


    coord_noeuds[0] contient un vecteur<MG_NOEUD*> de 222 objets précisemment.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    if !(coord_noeuds.empty()) {
            std::vector<MG_NOEUD*> test = coord_noeuds[0]; // tester le premier élément
            std::vector<MG_NOEUD*>::iterator pos;
     
            for (pos = test.begin() ; pos < test.end() ; pos++) {    /// 222 noeuds
                double coord1 = (*pos)->get_x(); // ligne bidon pour tester le segfault
                coord1 +=1; // pour eviter le warning "variable never used"
            }
       }

    Pourquoi j'obtient ce foutu Access Violation Segmentation Fault?

  2. #2
    Membre éclairé Avatar de MatRem
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    750
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 750
    Points : 693
    Points
    693
    Par défaut
    Je suis pas sur mais essaye de remplacer pos<test.end() par pos!=test.end().

  3. #3
    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
    C'est bon j'ai trouvé l'erreur finalement

    Si ca peut servir à quelqu'un d'autre c'est que je faisait des push_back dans mon vecteur de pointeur avec des éléments qui sont détruit à la fin d'une fonction donc quand j'allais pour les ré-utiliser l'addresse mémoire n'était plus allouée à ces objets, d'où le Segmentation Fault.

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

Discussions similaires

  1. seg fault avec gmp
    Par kkouet' dans le forum C
    Réponses: 13
    Dernier message: 28/05/2010, 17h46
  2. Réponses: 6
    Dernier message: 01/11/2007, 18h44
  3. Problême avec les algos, itérateurs ...
    Par R'SKaP dans le forum C++
    Réponses: 14
    Dernier message: 18/12/2005, 23h14
  4. Problème de basckup Restore avec IBCONSOLE
    Par myseb dans le forum Outils
    Réponses: 10
    Dernier message: 04/11/2004, 14h48
  5. problème de capture son avec Directshow
    Par albator83 dans le forum DirectX
    Réponses: 2
    Dernier message: 06/11/2003, 17h18

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