Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Обрабатывать остальную часть файла как внешний для отчетов диагностика.
Синтаксис
#pragma system_header
Замечания
Компилятор system_headerpragma сообщает компилятору отображать диагностика на уровне, указанном /external:Wn параметром для остальной части текущего исходного файла. Дополнительные сведения о том, как указать внешние файлы и уровень внешнего предупреждения компилятору, см. в статье /external.
Он system_headerpragma не применяется к концу текущего исходного файла. Другими словами, он не применяется к файлам, которые включают этот файл. Применяется system_headerpragma , даже если другие файлы не указаны как внешние для компилятора. Однако если уровень параметра не /external:Wn указан, компилятор может выдавать диагностику и использовать тот же уровень предупреждения, который применяется к не внешним файлам. Другие pragma директивы, влияющие на поведение предупреждения, по-прежнему применяются после system_headerpragma. Эффект #pragma system_header аналогичен следующему 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_headerpragma начиная с Visual Studio 2019 версии 16.10.
Пример
В этом примере заголовка показано, как пометить содержимое файла как внешний:
// 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
См. также
/external
warning pragma
/Wn (Уровень предупреждения компилятора)
директивы Pragma и ключевые слова __pragma и _Pragma