Da quello che ho capito stdafx.h è un file di intestazione precompilato e viene utilizzato per rendere più veloce la compilazione in Visual Studio. Quando creo un progetto C++ in visual studio 2012 c'è anche uno stdafx.cpp. Qualcuno può spiegare la relazione tra stdafx.h e stdafx.cpp?Che cosa è il file stdafx.cpp che viene creato automaticamente in un nuovo progetto C++ in visual studio 2012
risposta
Le intestazioni precompilate possono velocizzare notevolmente la compilazione dei file .cpp nel progetto. Per convenzione, è stdafx.h che # include tutti i file .h che si desidera precompilare. È possibile il nome tutto quello che vuoi, ma il modello di progetto appena Scelte stdafx.h
Ma prima che possa funzionare, ci deve essere uno file cpp che #includes stdafx.he viene compilato prima. Prima di tutti gli altri file .cpp nel tuo progetto. Una volta fatto, il compilatore può usare il file .pch che è stato creato e compilare rapidamente tutti gli altri file .cpp, non dovendo più in effetti includere le intestazioni.
Stdafx.cpp è un file .cpp. Ha un'impostazione diversa da tutti gli altri file .cpp, viene creata with /Yc. L'opzione "Crea file di intestazione precompilata".
- 1. Progetto Visual Studio 2010 in Visual Studio 2012
- 2. Che cos'è il file .xproj e come aprire questo tipo di progetto in Visual Studio 2012?
- 3. Che cos'è il file app.aps in Visual C++?
- 4. visual studio 2012 aggiungendo nuovo file di intestazione
- 5. Test dell'unità C++ in Visual Studio 2012
- 6. Visual Studio 2012 non pubblica il progetto
- 7. Visual Studio 2012 indica che il file di progetto del progetto di sito Web viene modificato all'esterno dell'ambiente
- 8. File SDF creato automaticamente nei progetti di Visual Studio?
- 9. Visual Studio che avvia il progetto sbagliato
- 10. Visual Studio 2012 non carica alcun progetto
- 11. Modifica file .cpp che fa in modo che Visual Studio 2012 ricompili file non correlati
- 12. Nuovo file di C++ in Visual Studio Express 2015
- 13. esportare automaticamente un Visual Studio 2012 modello di
- 14. Impossibile creare un nuovo progetto Web in Visual Studio 2013
- 15. Prerequisiti mancanti per Visual C++ in Visual Studio 2012
- 16. WebApi2 in visual studio 2012
- 17. Visual Studio 2012 si lamenta costantemente che un file è stato modificato all'esterno dell'editor di origine
- 18. Lua in visual studio 2012?
- 19. Che cosa fa un progetto di Visual Studio 2013 come progetto katana?
- 20. Come eseguire xunit in Visual Studio 2012?
- 21. Crea C++/C# creato con Visual Studio 2012 senza installare VS 2012?
- 22. cosa è `deployment.pri` che viene fornito con un semplice progetto C++ in Qt
- 23. Come posso evitare che Visual Studio 2012 Trova in File sia impostato su "Documento corrente"?
- 24. Come posso caricare un modello che ho creato in Visual Studio?
- 25. Progetto PowerShell di Visual Studio 2012
- 26. A cosa serve "stdafx.h" in Visual Studio?
- 27. Visual Studio 2012: Progetto non è possibile fare riferimento
- 28. Il progetto Xamarin UWP non viene creato dopo la creazione in Visual Studio 2015
- 29. Come posso generare un progetto di Visual Studio 2012 che indirizza Windows XP con CMake?
- 30. Visual Studio 2015: impossibile creare un nuovo progetto vuoto C++
Hai risposto prima alla tua domanda. – Rapptz
bene qual è la funzione di stdafx.cpp? – rage
Non è possibile compilare i file .h, è necessario il file .cpp per compilarlo. Quindi è il file precompilato; 'stdafx.cpp' include tutte le intestazioni che vuoi precompilate e le compila. Puoi leggere di più [qui] (http://stackoverflow.com/questions/1552058/how-to-implement-precompiled-headers-into-your-project) – Rapptz