2013-04-11 49 views
2

簡單的問題,但我似乎無法在任何參考材料中找到答案。#pragma警告 - 文件特定?

如果我有#pragma warning()指令,編譯器是否只爲當前文件定義?或者它通過#includes傳播到我的項目中的其他文件中?

這可能是一個更廣泛的問題,它不一定專用於#pragma,但這是我特別擔心的情況。

+0

你把#pragma警告放在哪裏?一個cpp文件或一個頭文件? – 2013-04-11 16:24:01

+0

你的編譯器是什麼? – 2013-04-11 16:26:30

+0

@Timo Geusch我還沒有放置#pragma,我只是想知道我需要把它放在哪裏,我需要它來處理多個文件。編譯器是VC 2012. – Luke 2013-04-12 08:24:41

回答

5

如果將指令放在標題中,將會影響包含該標題的任何其他文件。它也會影響你使用它後的任何頭文件。如果您擔心在使用此文件時影響其他文件,則可以使用#pragma warning (push)#pragma warning (pop)撤銷您只想將其本地化爲一個文件的任何更改。

+0

很好的答案。謝謝! – Luke 2013-04-12 08:25:48