Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Behandla resten av filen som extern för diagnostikrapporter.
Syntax
#pragma system_header
Anmärkningar
system_header
pragma instruerar kompilatorn att visa diagnostik på den nivå som anges av alternativet /external:Wn
för resten av den aktuella källfilen. Mer information om hur du anger externa filer och den externa varningsnivån för kompilatorn finns i /external
.
system_header
pragma gäller inte efter slutet av den aktuella källfilen. Med andra ord gäller det inte för filer som innehåller den här filen.
system_header
pragma gäller även om inga andra filer anges som externa för kompilatorn. Men om ingen /external:Wn
alternativnivå anges kan kompilatorn utfärda en diagnostik och använda samma varningsnivå den gäller för icke-externa filer. Andra pragma direktiv som påverkar varningsbeteendet gäller fortfarande efter en system_header
pragma. Effekten av #pragma system_header
liknar 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 )
system_header
pragma är tillgänglig från och med Visual Studio 2019 version 16.10.
Exempel
Det här exempelhuvudet visar hur du markerar innehållet i en fil som externt:
// 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
Se även
/external
warning pragma
/Wn
(kompilatorvarningsnivå)
Pragma-direktiv och nyckelorden __pragma
och _Pragma