system_header
pragma
Traitez le reste du fichier comme externe pour les rapports de diagnostic.
Syntaxe
#pragma system_header
Notes
Le system_header
pragma compilateur indique au compilateur d’afficher les diagnostics au niveau spécifié par l’option /external:Wn
pour le reste du fichier source actuel. Pour plus d’informations sur la façon de spécifier des fichiers externes et le niveau d’avertissement externe au compilateur, consultez /external
.
L’application system_header
pragma ne s’applique pas au-delà de la fin du fichier source actuel. En d’autres termes, il ne s’applique pas aux fichiers qui incluent ce fichier. S’applique system_header
pragma même si aucun autre fichier n’est spécifié comme externe au compilateur. Toutefois, si aucun niveau d’option n’est /external:Wn
spécifié, le compilateur peut émettre un diagnostic et utilise le même niveau d’avertissement qu’il s’applique aux fichiers non externes. D’autres pragma directives qui affectent le comportement d’avertissement s’appliquent toujours après un system_header
pragma. L’effet est #pragma system_header
similaire à :warning pragma
// If n represents the warning level specified by /external:Wn,
// #pragma system_header is roughly equivalent to:
#pragma warning( push, n )
// . . .
// At the end of the file:
#pragma warning( pop )
La system_header
pragma version 16.10 de Visual Studio 2019 est disponible.
Exemple
Cet exemple d’en-tête montre comment marquer le contenu d’un fichier comme externe :
// library.h
// Use /external:Wn to set the compiler diagnostics level for this file's contents
#pragma once
#ifndef _LIBRARY_H // include guard for 3rd party interop
#define _LIBRARY_H
#pragma system_header
// The compiler applies the /external:Wn diagnostic level from here to the end of this file.
// . . .
// You can still override the external diagnostic level for warnings locally:
#pragma warning( push )
#pragma warning( error : 4164 )
// . . .
#pragma warning(pop)
// . . .
#endif
Voir aussi
/external
warning pragma
/Wn
(Niveau d’avertissement du compilateur)
Directives pragma et les __pragma
_Pragma
mot clé
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour