2012-08-25 29 views
-1

看來,當我將選項設置爲/ Yu時,它只是使用任何pch,而不檢查是否需要更新,這意味着它會保留它預編譯的頭文件列表,並檢查這些文件自上次被預編譯以來是否更新過。是否Visual C++檢查是否需要重新生成其pch如果我使用/ Yc

但是,當我/ YC,它只是重新預編譯每次我建立我的項目。

我不是很確定Visual C++是否像我想的那樣處理這些行爲,或者如果我犯了編輯.h文件或其他錯誤。所以我應該設置/ Yc,編譯,重置爲/ Yu,繼續迭代,但是重置爲/ Yc,重建,然後每次更新頭文件時都將RESET重新設置爲/ YU?

+0

我希望我的英語好,並以良好的方式解釋我的問題 – jokoon

+0

[如何有效地使用預編譯頭(使用/ Yc和Yu選項)?](http://stackoverflow.com/questions/ 5177046/how-to-use-precompiled-headers-efficient-using-yc-and-yu-options) –

回答

0

您設置了一個文件,其中包含要預編譯使用的頭文件/Yc,並且如果需要(即,相對於頭文件,pch文件已過時),將生成pch文件。然後設置包含它的其他文件使用/Yu,並且它們使用第一個文件生成的預編譯頭。

如果您使用Visual Studio嚮導生成帶有預編譯頭的控制檯項目,您將看到此操作。 stdafx.cpp文件包含stdafx.h,並且設置爲/Yc以爲其生成一個pch文件;那麼main.cpp文件也包含stdafx.h,但它具有/Yu集合,所以它使用pch文件。

(我發現的文件的預編譯的頭段開頭有點不透明的,但有一次,我得到了建立預編譯的頭,我會看到他們的工作,它開始讓更多的意義。)

+0

你如何在單個文件上設置/ yc或/ yu?當我問到我實際上是指項目屬性時...... – jokoon

+0

在解決方案資源管理器中選擇文件,然後右鍵單擊並從上下文菜單中選擇「屬性」選項。您可以使用它來設置每個文件的某些選項。預編譯的頭文件選項就是這樣一個選項。 –

+0

你能確認我可以同時對多個文件做同樣的事嗎? (我不是在窗戶atm) – jokoon

相關問題