我今天第一次遇到了預編譯頭文件..改變了我的生活。我無法相信編譯我的C++代碼可能會很快。這使得現在總感覺..頭文件中的預編譯頭文件
無論如何,有一點是困惑我的是,從我至今讀,預編譯頭只應加入源文件(CPP?)。
在Visual Studio中,有項目屬性 - > C/C++下的選項 - >高級 「人力包含文件」。我將該編譯器選項設置爲stdafx.h。
做this..I不再需要包括我已經加入到我的stdafx.h中頭之後,即使是在我的頭文件(源文件都應該自動包括stdafx.h中)。這是預期的行爲?
我無法找到一個地方,在頭/源文件之間的區別清楚。
如果does..great但恐怕它的那些東西VC++讓你得逞的,但將在GCC打破一個又一個。是的,它需要可移植;至少在GCC和VC++之間。
那麼,如果你想讓你的項目在gcc上工作,那麼你最好遠離「強制包含文件」選項。 Boilerplate是使源代碼文件中的第一個#include包含預編譯頭文件。 – 2012-07-09 21:15:51
@Hans,等效的gcc功能是使用'-include'命令行選項在每個文件的開頭包含* stdafx.h *。 – 2012-07-09 21:21:48