Comment fonctionne #error en C / C ++?
Je devine à partir de nº que c'est seulement au moment de la compilation de l'utilitaire. Comment peut-il être utilisé dans des programmes C/C++?
N'a pas trouvé beaucoup de sujet sur l'internet. Tous les liens seraient utiles.
source d'informationauteur Moeb
Vous devez vous connecter pour publier un commentaire.
Il provoque le compilateur (ou preprocessor) à la sortie de la message d'erreur. En C++, elle rend également l'unité de traduction mal formé (c'est à dire, il provoque la compilation à l'échec).
Si vous avez plusieurs macros qui peuvent être définis et vous voulez être sûr que seules certaines combinaisons d'entre eux sont définis, vous pouvez utiliser
#error
à cause de la compilation échoue si une combinaison non valide est défini.Il peut également être utile si vous voulez être sûr qu'un bloc de code n'est jamais compilé (pour quelque raison que ce soit).
Utile pour vérifier les paramètres du compilateur ainsi que la vérification de macro combinaisons de valeurs. Certains aléatoire exemples:
Ici est un lien vers la documentation de Gnu préprocesseur expliquant la
#error
et#warning
directives: http://gcc.gnu.org/onlinedocs/cpp/Diagnostics.htmlEn particulier:
Voir aussi cette question sur la portabilité de ces directives.