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 :

operateur new : erreur d'execution.


Sujet :

C++

  1. #1
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 239
    Points
    239
    Par défaut operateur new : erreur d'execution.
    Bonjours à tous

    Je vous contact aujourd'hui car je n'ai pas trouvé de solution à un souci très étranges.

    Windows a déclenché un point d'arrêt dans Engine.exe

    Cela peut être dû à une défaillance du tas et indique un bogue dans Engine.exe ou l'une des DLL chargées.

    La fenêtre Sortie peut contenir des informations de diagnostic supplémentaires
    Visual m'ouvre sur une page blanche disant que les sources son disponible là ou ce situe le breakpoint. Et pourtant ... je voudrais bien avoir les détails supplémentaires, mais j'ai pas la console à l'exécution de mon programme. J'ai donc activé des breakpoint pour trouvé ou est le souci, et le plus bizar est qu'il arrive sur cette ligne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    VBO_LOADING * pTask = new VBO_LOADING ;
    VBO_LOADING est une class. Seulement, j'ai dans d'autre cpp des lignes équivalente avec la même class, mais elles fonctionnent. Pourquoi ce souci et comment le régler ?
    Pour info, je compile sous visual C++ 2010.

    En l'espérance de votre réponse, je vous remercie de votre lecture.

  2. #2
    Membre averti Avatar de vikki
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 292
    Points : 302
    Points
    302
    Par défaut
    Hello,
    J'ai déjà eu ce type de problème, gros crash sur un allocation mémoire (avec visual 2005). C'était du à une précédente corruption mémoire via un buffer overrun dans une des dll utilisées. Vérifie si par hasard tu n'écrit pas en dehors des bornes d'un tableau quelque part avant ton new, ca peut venir de là...

  3. #3
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 239
    Points
    239
    Par défaut
    Incroyable ! t'a pas tord sur ce coup là !!! effectivement j'écrivais en dehors d'un tableau, 162 ligne tandis que le tableau faisait 81 lignes ... Je suis étonné qu'il n'est pas bronché de ce bug. Un simple oublie d'un x2. J'ais longtemps été habitué à l'univers mac ou on me stoppait mon apply des que je dépassais les bornes du tableau. Alors je n'y avais pas du tout pensé. Merci beaucoup de ton aide !

  4. #4
    Membre averti Avatar de vikki
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    292
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mai 2007
    Messages : 292
    Points : 302
    Points
    302
    Par défaut
    J'ai souvenir que sous linux avec gcc, le dépassement d'écriture provoquait direct une belle segfault, donc ce comportement foireux est peut être propre à visual. De manière générale, remplacer tous les tableau par des vecteurs supprime le problème puisque l'opérateur [] vérifie la validité de l'indice passé en paramètre (ou alors c'est la fonction at(), je sais plus ).

  5. #5
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Points : 4 637
    Points
    4 637
    Par défaut
    Citation Envoyé par vikki Voir le message
    J'ai souvenir que sous linux avec gcc, le dépassement d'écriture provoquait direct une belle segfault
    Pas systématiquement non, ça dépends d'où tu écris en dépassant.

  6. #6
    Membre actif
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2009
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2009
    Messages : 219
    Points : 239
    Points
    239
    Par défaut
    Oui, je compilais aussi sous gcc à l'époque et me sortait un exc bad access dès qu'il y avait un dépassement mémoire. Mais depuis, sous visual c++ je fais aussi de l'assembleur pour accéléré certaine taches, donc les erreurs sont facile à commettre (la preuve ^^).

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

Discussions similaires

  1. erreur d'execution 3704, ...:objet n'est pas ouvert
    Par cari dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 29/11/2005, 15h44
  2. [ERREUR D'EXECUTION] Segmentation Fault
    Par CestPasMoi dans le forum C++
    Réponses: 3
    Dernier message: 26/11/2005, 17h38
  3. Réponses: 3
    Dernier message: 03/11/2005, 18h41
  4. [LDAP][Interface Winldap.h] Erreur d'execution
    Par -=Spoon=- dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 10/03/2005, 17h10
  5. [javamail] erreur d'execution
    Par bibx dans le forum API standards et tierces
    Réponses: 11
    Dernier message: 05/12/2003, 11h04

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