這種“即使沒有修改代碼也會重新編譯生成”情況的發生,原因就是項目代碼中包含了本地不存在的頭檔案。項目找不到該頭檔案,就一直會出現這種,不斷rebuild的糟糕情況。仔細檢查項目,你可能發現自己疏忽在哪。
stackoverflow上有這個問題的讨論
http://stackoverflow.com/questions/2762930/vs2010-always-thinks-project-is-out-of-date-but-nothing-has-changed
其中這一段:
I was able to track down the cause: The project included a header file which no longer existed on disk.
Removing the file from the project solved the problem
真是形容的貼切。一下就找到了命門所在
這幾天我又遇到了這樣的情況,
是這樣的:這主程式檔案中要包含調用多個資源類,其中有一個父類帶着多個子類,父與子類在主程式中都有執行個體化,于是開始我把這些類都包含了,這樣出現了 重新編譯的怪現象,經過查找,發現,主程式中可以不包含 那個父類,因為在包含它子類的同時,主程式就已經等于 包含了 這個父類,如果再加包含,就屬于重複包含了。這個問題也是出在#include“”上。供大家參考,如果有其它疑難情況出現,可以聯系我,咱們一起讨論讨論。