Soubory PCH v procesu vytváření
Základ kódu projektu software je obvykle obsažena ve více c nebo C++ zdrojové soubory, soubory objektu, knihoven a záhlaví souborů.Obvykle makefile koordinuje kombinaci těchto prvků do spustitelného souboru.Následující obrázek znázorňuje strukturu souboru makefile, který používá soubor předkompilovaný záhlaví.Názvy maker NMAKE a názvy souborů v tomto diagramu jsou konzistentní s odkazy v příkladu kódu v Vzorku Makefile pro PCH a Příklad kódu pro PCH.
Na obrázku pomocí tří zařízení graficky zobrazit tok procesu vytváření.S názvem obdélníky představují každý soubor nebo makra. tři makra představují jeden nebo více souborů.Stínované oblasti představují jednotlivé akce kompilace nebo propojení.Šipky zobrazují, které soubory a makra jsou kombinovány při kompilaci nebo proces propojení.
Struktura souboru Makefile, který používá soubor předkompilovaný záhlaví
Začátek v horní části diagramu, STABLEHDRS a AUTONOMNÍHO jsou NMAKE makra, jejichž seznam souborů není pravděpodobně potřebovat recompilation.Tyto soubory jsou kompilované pomocí příkazového řetězce
CL /c /W3 /Yc$(BOUNDRY) applib.cpp myapp.cpp
pouze v případě, že soubor předkompilovaný záhlaví (STABLE.pch) neexistuje nebo změny souborů uvedených v dvě makra.V obou případech bude obsahovat soubor předkompilovaný záhlaví kódu pouze ze souborů uvedených v STABLEHDRS makro.Poslední soubor, který chcete v makru AUTONOMNÍHO předkompilovaný seznamu.
Soubory seznamu tyto makra mohou být soubory záhlaví nebo c nebo C++ zdrojové soubory.(.Pch jeden soubor nelze použít s moduly c a C++). Všimněte si, že můžete použít hdrstop makra zastavit individuálním nastavením bodu v rámci AUTONOMNÍHO souboru.Viz hdrstop Další informace.
Pokračováním dolů diagramu představuje APPLIB.obj kód podpory v poslední žádost.Je vytvořen z APPLIB.cpp, soubory uvedené v makru UNSTABLEHDRS a z hlavičky předkompilovaný kód předkompilována.
MYAPP.obj představuje poslední žádost.Je vytvořen z MYAPP.cpp, soubory uvedené v makru UNSTABLEHDRS a z hlavičky předkompilovaný kód předkompilována.
Nakonec spustitelný soubor (MOJEAPL.(EXE) vytvoří propojení souborů uvedené v makru OBJS (APPLIB.obj a MYAPP.obj).
Informace o obrázek naleznete: