Capisco lo scopo e il ragionamento delle intestazioni precompilate. Tuttavia, quali sono le regole quando le implementano? Dalla mia comprensione, va qualcosa di simile:Come implementare le intestazioni precompilate nel progetto
- Imposta il progetto fino a utilizzare le intestazioni precompilate con la direttiva YU.
- Creare il file stdafx.h e impostarlo come intestazione precompilata.
- Includere questo come la dichiarazione di inclusione superiore in ciascuno dei file .h.
E 'corretto? Dovresti escludere l'inclusione nei file inclusi nell'intestazione precompilata? Attualmente, ottengo il seguente errore di compilazione quando si segue la mia intuizione con questo:
errore C2857: '#include' dichiarazione specificata con l'opzione della riga di comando /Ycstdafx.h non è stato trovato nel file sorgente
Le opzioni della riga di comando sono in quanto tali:
/od/I "../External/PlatformSDK/Include"/I ".."/I" ../ External/atlmfc/Include " /D" _DEBUG "/ D" _UNICODE "/ D" UNICODE " /Gm/EHsc/RTC1/MDd /Yc"stdafx.h" /Fp"....\Output\LudoCore \ Debug \ LudoCore.pch " /Fo" .... \ Output \ LudoCore \ Debug \ " /Fd"....\Output\LudoCore\Debug\vc80.pdb" /W4/WX/nologo/c/ZI/TP/wd4201 /errorReport: pronta
Stai dicendo che questo dovrebbe essere costruito solo a linea di comando? In Visual Studio, non sono sicuro di come creare qualcosa con una certa proprietà. Sembra sempre essere solo "Aggiungi -> Nuovo elemento -> Intestazione", ecc. – Chris
Fare clic con il tasto destro del mouse sul file cpp e selezionare "Proprietà" nel menu di scelta rapida. Tra le pagine di proprietà di configurazione C++ ce n'è una per "Precompiled Headers", che usi per specificare che questo file CPP crea o usa un file di intestazione precompilato. – ChrisW
Grazie per l'aggiornamento. Ho fatto come mostrato sopra e ancora nessun dado. Ecco le opzioni della riga di comando rispetto alla tua sopra:/Od/I "../External/PlatformSDK/Include"/I ".."/I "../External/atlmfc/Include"/D "_DEBUG"/D "_UNICODE"/D "UNICODE"/Gm/EHsc/RTC1/MDd /Yc"stdafx.h "/Fp"..\..\Output\LudoCore\Debug\LudoCore.pch"/Fo ".. \. . \ Output \ LudoCore \ Debug \\ "/Fd"..\..\Output\LudoCore\Debug\vc80.pdb"/W4/WX/nologo/c/ZI/TP/wd4201/errorReport: prompt – Chris