我有一個Visual Studio 2010解決方案,其中包含幾個非常密切相關的項目。想脫離複製粘貼代碼共享和共享項目之間的一些共同的類。我們嘗試將項目A中的類的引用添加到項目B中,但是在共享類引用錯誤的stdafx.h文件的情況下正在收到編譯錯誤。請注意,兩個項目都預編譯了標題(默認情況下)。在解決stdafx.h依賴關係時共享項目之間的類
我們還了解到它是使用預處理器定義的not possible to #ifdef the correct stdafx.h文件。
在這一點上,它看起來像我們的選擇是要麼建立一個靜態庫項目或多個項目,並參考來自項目A & B,或嘗試一些預生成事件複製正確的stdafx.h文件到共享代碼子文件夾。第三是重新構建這兩個項目,根本不使用stdafx.h。
所有這些選項對我來說似乎有點矯枉過正。有沒有更容易的解決方案,我錯過了?
我認爲,最好的選擇是用公用代碼創建一個靜態庫,正如您發現的那樣... – Aconcagua
一種解決方案是在預編譯頭文件關閉的情況下編譯。這完全擺脫了stdafx.h。 – user4581301
您是否嘗試過創建新的過濾器並從該過濾器中的其他項目添加類。這可以幫助明確其他項目類的來源,並且可以將stdafx.h添加到該過濾器。 – amisam