2013-04-11 3 views
2

Простой вопрос, но я не могу найти ответ в любом справочном материале.#pragma warning - конкретный файл?

Если у меня есть директива #pragma warning(), компилятор определяет это только для текущего файла? Или это распространяется через #includes в других файлах в моем проекте?

Это, вероятно, более широкий вопрос, который не обязательно специфичен для #pragma, но в этом я особенно беспокоюсь.

+0

Где вы положили предупреждение #pragma? Файл cpp или файл заголовка? –

+0

Что вы компилируете? –

+0

@Timo Geusch Я еще не поставил #pragma, мне просто интересно, куда мне нужно его поместить, мне нужно это для нескольких файлов. Компилятор VC 2012. – Luke

ответ

5

Если вы поместите директиву в заголовок, это повлияет на любой другой файл, который включает этот заголовок. Это также повлияет на любые заголовки, включенные после его использования. Если вы беспокоитесь о влиянии на другие файлы с помощью этого использования, вы можете использовать #pragma warning (push) и #pragma warning (pop), чтобы отменить любые изменения, которые вы хотите сделать локально в один файл.

+0

Отличный ответ. Благодаря! – Luke

Смежные вопросы