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 :

trop de warning avec map


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 83
    Par défaut trop de warning avec map
    salut mes amis
    quand j'utulise le map de sdl cad je fais #include <map>
    using namespace std ;

    je trouver plusieurs warning
    je sais q'il ya une commande qui elimine les warning
    c'est #pragma ..... disabled
    ya qq qui le connais

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    1. Je ne vois pas ce que vient faire "sdl" là-dedans.
    2. Et si tu nous montrait plutôt tes warnings ?
      De plus, le pragma ne marche que sous Visual...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 83
    Par défaut
    voila ce que j'ai dans #include "stdfx.h"

    #if _MSC_VER > 1000
    #pragma once
    #endif // _MSC_VER > 1000

    #include <map>
    #include <string>
    #include "iostream.h"
    using namespace std


    beh le probleme que cette map fais bcp des warning
    j'utulise vc++ version 6.0

  4. #4
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 83
    Par défaut
    voila un examplaire des warnings



    c:\program files\vc98\include\xtree(120) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,expression>,std::map<std
    ::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,
    std::allocator<char> > >,std::allocator<expression> >' : identifier was truncated to '255' characters in the debug information
    c:\program files\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<cha
    r> > const ,expression>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic
    _string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >' being compiled
    E:\Work\ii2_project\CPOO\tp42\editeur.cpp(30) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,s
    td::allocator<char> > >,std::allocator<expression> >' being compiled
    c:\program files\vc98\include\xtree(120) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,expression>,std::map<std
    ::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,
    std::allocator<char> > >,std::allocator<expression> >::const_iterator' : identifier was truncated to '255' characters in the debug information
    c:\program files\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<cha
    r> > const ,expression>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic
    _string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >' being compiled
    E:\Work\ii2_project\CPOO\tp42\editeur.cpp(30) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,s
    td::allocator<char> > >,std::allocator<expression> >' being compiled
    c:\program files\vc98\include\xtree(120) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,expression>,std::map<std
    ::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,
    std::allocator<char> > >,std::allocator<expression> >::iterator' : identifier was truncated to '255' characters in the debug information
    c:\program files\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<cha
    r> > const ,expression>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic
    _string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >' being compiled
    E:\Work\ii2_project\CPOO\tp42\editeur.cpp(30) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,s
    td::allocator<char> > >,std::allocator<expression> >' being compiled
    c:\program files\vc98\include\xtree(120) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,expression>,std::map<std
    ::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,
    std::allocator<char> > >,std::allocator<expression> >::_Node' : identifier was truncated to '255' characters in the debug information
    c:\program files\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<cha
    r> > const ,expression>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic
    _string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >' being compiled
    E:\Work\ii2_project\CPOO\tp42\editeur.cpp(30) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,s
    td::allocator<char> > >,std::allocator<expression> >' being compiled
    c:\program files\vc98\include\xtree(120) : warning C4786: 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,expression>,std::map<std
    ::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic_string<char,std::char_traits<char>,
    std::allocator<char> > >,std::allocator<expression> >::const_iterator' : identifier was truncated to '255' characters in the debug information
    c:\program files\vc98\include\map(46) : see reference to class template instantiation 'std::_Tree<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<cha
    r> > const ,expression>,std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >::_Kfn,std::less<std::basic
    _string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<expression> >' being compiled
    E:\Work\ii2_project\CPOO\tp42\editeur.cpp(30) : see reference to class template instantiation 'std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,expression,std::less<std::basic_string<char,std::char_traits<char>,s
    td::allocator<char> > >,std::allocator<expression> >' being compiled

  5. #5
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    1. Plus de iostream.h. Le header standard, c'est <iostream>
    2. Jamais de using namespace dans un header. Jamais. Je parie que c'est ça qui génère le plus de bordel.


    Quant au warning, en effet, on peut virer ça. Sans doute un bug de Visual 6, donc on peut le désactiver ainsi:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #pragma warning(disable:4786)
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Expert éminent
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Salut,

    En plus, bien plus que d'essayer d'éviter l'affichage des warnings, il serait intéressant, apres avoir pris en compte les remarques de medinoc , de plutot essayer de prendre en compte celles qui restent pour voir si tu ne peut pas les corriger...

    En effet, un warning en lui meme ne fait rien ("Attention, vous faites quelques choses de suspect")... Mais ca peut attirer ton attention sur quelque chose qui est susceptible de provoquer un comportement indéfini...

    Et qui dit "comportement indéfini" dit "risque de plantage" aléatoire, quand, par malheur, on essaye de faire le genre de chose qu'on n'essaye qu'une fois tous les trois ans

    Un simple exemple, le fameux et souvent rencontré "warning: comparison between signed and unsigned integer expressions" qui ne posera aucun problème tant que tu resteras dans la fourchette des nombres non signés... mais qui pourrait en poser quand tu passera du coté des nombres négatifs
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  7. #7
    Membre éprouvé
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Décembre 2005
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Décembre 2005
    Messages : 109
    Par défaut
    Quand on lit le warning :
    Citation Envoyé par killer_instinct
    identifier was truncated to '255' characters in the debug information
    On se rend compte que ça vient du compilateur, et que ça n'a rien de vraiment grave sur l'exécution du programme.
    Soit tu désactive le warning, soit tu passe en "Release", soit tu change de compilo ^^

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

Discussions similaires

  1. Warning avec opendir()
    Par miron dans le forum C
    Réponses: 4
    Dernier message: 06/05/2006, 11h25
  2. [Cookies] Warning avec la fonction
    Par zave dans le forum Langage
    Réponses: 3
    Dernier message: 01/03/2006, 12h29
  3. [FTP] Warning avec ftp_get, mais pas de message d'erreur
    Par NomUtilisateurDejaPris dans le forum Langage
    Réponses: 2
    Dernier message: 22/02/2006, 18h12
  4. [PERL] Problème avec map
    Par LE NEINDRE dans le forum Langage
    Réponses: 9
    Dernier message: 05/10/2005, 09h48
  5. [C#] Colonne de trop dans DataGrid avec SQLCE
    Par Roach- dans le forum Windows Forms
    Réponses: 2
    Dernier message: 07/04/2005, 20h01

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