我有一個單元a.cpp,用於子目錄libA
中的多個項目。一些項目正在使用預編譯頭文件,而另一些則沒有。在這種情況下使用預編譯頭項目必須具有行:<stdafx.h>和「stdafx.h」之間的區別
#include "..\stdafx.h"
明智的詩句是不工作:
#include <stdafx.h>
未使用PCH必須有行
和項目。
當項目使用PCH或不使用PCH時,爲什麼項目會以不同的方式看到stdafx.h文件?
UPD。
當我更換線#include <stdafx.h>
在使用預編譯頭項目#include "..\stdafx.h"
我有錯誤
Error 19 error C1010: unexpected end of file while looking for precompiled header. Did you forget to add '#include "stdafx.h"' to your source?
目錄結構在這兩個項目是相同的。
一個不同的解決方案:將a.cpp放入庫或DLL中以供重用。那麼你不需要擔心預編譯頭的差異。 – crashmstr
這可能是解決方案,但我懶惰重新編譯獨立項目中的庫,每次我改變它們。它不是很好:) – vico
將庫或DLL項目添加到其他解決方案並添加依賴項。一旦建立,無需額外的工作!很好。重用的代碼屬於庫或DLL。 – crashmstr