J'utilise MSVC avec un projet de cmêté. En conséquence, j'ai activé de nombreux drapeaux sur MSVC qui ont été activés pour GCC et Clang. Cependant, le niveau d'avertissement / wall me donne une certaine douleur; Cela me met en garde sur toutes sortes de choses dans les en-têtes inclus, comme Stdiadio.h et Boost en-têtes. Y a-t-il un moyen d'arrêter MSVC de m'avérer sur des choses dans les en-têtes? J'aime mes niveaux d'avertissement, mais je veux seulement qu'ils sont activés pour moi. P>
3 Réponses :
ou modifier le niveau d'avertissement avec: p> Voir le Documentation MSDN: http://msdn.microsoft.com/en-us/library/ 2C8F766E.aspx P> P> / mur code> est très em> pédant.
/ w4 code> est probablement tout ce dont vous avez vraiment besoin. Pour répondre à votre question, vous pouvez désactiver des avertissements spécifiques autour de vos en-têtes avec:
Donc, il n'ya aucun moyen de dire à MSVC de ne pas avertir les en-têtes sur lesquels je n'ai aucun contrôle? (C'est-à-dire tous les en-têtes inclus dans les crochets d'angle, pas de citations doubles)
Non, il n'y a pas. De plus, pour certains modèles, vous devez désactiver les avertissements non seulement autour des en-têtes, mais également là où vous les instanciez (mais cela n'était peut-être qu'un problème avec une version plus ancienne ... Je ne suis pas si sûr ici, SRY). Prenez des soins supplémentaires lorsque vous utilisez des en-têtes précompilés: vous devez également le désactiver.
Mark Tolonen a déjà signalé Si cela produit toujours des avertissements, par exemple Vous utilisez une version plus ancienne MSVC comme 7.1, ou vous utilisez une bibliothèque tierce qui produit toujours des avertissements sur parfaitement bon code, et que vous visez Clean Compiles em>, puis voir mon suppression de msvc idiot-avertissement en-tête. P>
Il y a eu quelques tours d'examen communautaire, dans le groupe COMP.LANG.C ++ USENET, mais il peut être mis à jour comme Microsoft ajoute des avertissements encore plus stupides dans les nouvelles versions de compilateur ...; -) P> / w4 code>. p>
J'aime particulièrement le nouvel avertissement dans VC ++ 10 "AVERTISSEMENT: les éléments de la matrice seront initialisés par défaut" comme s'il y avait quelque chose de mal à cela: /
Vous pouvez désactiver des avertissements spécifiques à l'aide du drapeau / wdxxxx code> où
xxxx code> est le numéro des avertissements que vous souhaitez ignorer. Pas besoin de modifier le code. P>
Duplicaté possible de Quoi de neuf avec Des milliers d'avertissements dans des en-têtes standard dans MSVC -Wall?
Votez pour visualstudio.userservoice.com/forums/121579-Visual-Studio-ide/...