2009-10-11 106 views
3

我有兩個dll文件,大約1500 cpp文件。當我需要編輯一個文件時,我通常會從頭開始重新編譯所有1500個文件。但我聽說有一種方法可以讓Visual Studio重新編譯修改,只需要很少的時間......我該怎麼做?Visual C++工作室,僅重新編譯修改後的文件

+1

不是視覺工作室做到這一點,如果你打'build',那麼這個工作就是這樣嗎? – stijn 2009-10-11 10:29:58

+0

不,它只是重新編譯每個文件,我得等待很長時間 – 2009-10-11 10:37:48

+1

你確定使用'build'而不是'rebuild all'嗎?我很肯定,如果你只更改一個源文件(所以不是所有源文件包含的頭文件,vs只編譯該文件然後執行鏈接),或者可能有一個項目設置,我不知道這會強制一個完成重建.. – stijn 2009-10-11 10:44:34

回答

14

VS在執行依賴性檢查時非常好,因此只需重新編譯必要的東西。我可以看到一些(或多或少)可能出現的原因:

  • 您修改了一個標題,並且它已包含在所有地方。
  • 你正在打「重建」而不是「打造」。
  • 您已包含cpp文件。
  • 你的項目,磁盤或日期有些腥意。

這就是我認爲降低概率的順序。

3

選擇修改後的文件,單擊鼠標右鍵並編譯,然後它只編譯修改後的文件,然後編譯它..與簡單構建整個項目相比,它花費的時間更少。不知道VS.net IDE的新版本..我認爲VS.net IDE只關心修改後的文件..如果您運行「構建」而不是「重建」

1

在項目屬性中查找預編譯頭選項 - > C/C++ - >預編譯頭文件菜單。將其設置爲使用而不是創建。這幫助了我。以下是我原來的留言,我想在這裏發帖:)

嗨。我也與VS 2010有同樣的問題。我已經運行了幾次構建命令,所以所有的項目都是最新的。我添加到一個包含空類的解決方案.cpp和.h文件。 .cpp文件只包含預編譯的頭文件和.h文件,而.h文件只包含#pragma一次和'class test {};'。經過幾次建設(4線程建設),我得到所有最新的消息。然後我將.h文件更改爲'class test {int a};'並選擇構建所有重建的文件。

另外我檢查了最小的重新編譯選項,並打開它。可能是預編譯頭引起麻煩。我現在檢查它:D

相關問題