Comment puis-je vérifier si la syntaxe d'un fichier d'en-tête est correcte avec les outils GCC? P>
4 Réponses :
Vous pouvez essayer de la compiler avec g ++ code>, comme dans
g ++ -c myheader.h code>. Cela attrapera des erreurs de syntaxe. P>
g ++ -fsyntax-seul -wall -wextra -wno-déprécis -std = c ++ 11 myheader.h code>
Fabriquez un fichier CPP qui ne comprend que l'en-tête et la compilez;) p>
Je m'assure généralement que chaque en-tête est inclus par un fichier source. Si, par exemple, une bibliothèque que je développe est d'en-tête uniquement, j'écris spécifiquement un test de l'unité Bare-Bones spécifiquement pour inclure des en-têtes autonomes et une instanciation de test de tous les modèles de cet en-tête. P>
fait exactement ce que vous voulez: p> -fsyntax-seul code> strud>
man g ++ code> dit: p>
Je pense que cette réponse doit être marquée aussi correcte qu'elle explique une solution exacte pour le problème, pas seulement de la sollicitation.
La vérification du type est également effectuée (c'est-à-dire une vérification sémantique statique est effectuée au-delà de la lexicale et de la syntaxe)
Écrivez un programme de stub que
#include code> s l'en-tête et compilez-le? Sans plus d'informations, cette question ne va pas obtenir une réponse utile.
Umm ... utilisez-le dans un fichier source ...