2009-10-16 67 views
1

我需要包含一個頭文件,其中包含一些全局變量(不是我的,所以我無法更改它)。包含帶有全局變量的頭文件

我該怎麼做才能讓包含文件中的變量在所有情況下都被視爲'extern'?

+0

「包含」是指「聲明」還是「定義」? – sellibitze 2009-10-16 09:18:30

回答

3

你不能。複製標題並自己添加extern。

+0

這是一種非標準的頭文件的寫法,你正是這樣描述的原因。通常你會希望頭文件使用'extern'聲明每個全局變量,然後在其他地方的實現文件中創建實際的變量存儲聲明。 – 2009-10-16 00:28:33

0

如果變量只在頭中聲明,但沒有賦值,那麼您可以根據編譯器做到這一點。例如,GCC具有-fno-common標誌來控制這種行爲。