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:?
Version imprimable
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:?
- Je ne vois pas ce que vient faire "sdl" là-dedans.
- Et si tu nous montrait plutôt tes warnings ?
De plus, le pragma ne marche que sous Visual...
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
voila un examplaire des warnings :cry: :cry: :cry: :cry: :cry:
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
- Plus de iostream.h. Le header standard, c'est <iostream>
- 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:#pragma warning(disable:4786)
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 :salut:, 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 :P
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 :P
Le C4786 n'est pas vraiment pertinent.
Tu sais que tu peux demander à ton compilo, VC6, des explications sur le warning avec F1 (ou CTRL-F1, je ne sais plus lequel) ?
Je ne serai pas étonné que cela soit dans la FAQ des VC.
Mets ton compilateur à jour.
n'y aurait-il pas une histoire d'utilisation d'unicode pour les chaînes de caractères ?
Quand on lit le warning :
On se rend compte que ça vient du compilateur, et que ça n'a rien de vraiment grave sur l'exécution du programme.Citation:
Envoyé par killer_instinct
Soit tu désactive le warning, soit tu passe en "Release", soit tu change de compilo ^^