Konzistence pravidla pro použití kompilovaných záhlaví-soubor
/Yu volba kompilátoru umožňuje určit, které předkompilována soubor záhlaví (PCH).
Při použití PCH kompilátor předpokládá stejné prostředí kompilace – pomocí volby kompilátoru konzistentní, pragmas a tak dále –, který byl v platnosti po vytvoření PCH, pokud neurčíte jinak.Kompilátor zjistí nekonzistenci, upozornění a identifikuje nekonzistencí, kde je to možné.Takové upozornění nemusí nezbytně znamenat potíže s PCH; upozorňují jednoduše je možné konflikty.V následující části jsou popsány požadavky konzistence pro PCHs.
Konzistence volba kompilátoru
Při použití PCH následující volby kompilátoru upozornění nekonzistenci spustit:
Makra vytvořená pomocí preprocesoru (/ D) možnost musí být mezi vytvořenou PCH kompilace a aktuální kompilace.Není zaškrtnuto políčko Stav definované konstanty, ale nepředvídatelné výsledky může dojít, pokud tyto změnit.
PCHs nefungují s možností/e a /EP.
PCHs musí být vytvořen pomocí buď generovat procházet informace (/ FR) možnost nebo vyloučit místní proměnné (/ Fr) možnost následné kompilace, které používají PCH použít tyto možnosti.
C 7.0 kompatibilní (/ Z7)
Pokud tato možnost platí při vytvoření PCH, následné kompilace, které používají PCH použít ladicí informace.
Pokud c 7.0 kompatibilní (/ Z7) není platná při vytvoření PCH, následné kompilace, které používají PCH a /Z7 aktivace upozornění.Ladicí informace do aktuálního souboru obj a místní symboly definované v PCH nejsou k dispozici pro ladicí program.
Zahrnout cestu konzistence
PCH neobsahuje informace o zahrnout cestu, která byla v platnosti v okamžiku vytvoření.Při použití souboru .pch kompilátor používá vždy zahrnout cesty zadané v aktuální kompilace.
Konzistence souboru zdroje
Pokud zadáte možnost použití předkompilována záhlaví souboru (/Yu), Kompilátor ignoruje všechny direktivy předprocesoru (včetně pragmas), které se zobrazují ve zdrojovém kódu, který bude předkompilována.Kompilace určené tyto direktivy preprocesoru musí být stejné jako kompilace pro možnost vytvořit soubor předkompilována záhlaví (/Yc).
Konzistence pragma
Pragmas, které jsou obvykle zpracovány během vytváření PCH vliv soubor, se kterým PCH následně použity.Pragmas komentář a zprávy nemají vliv na zbytek kompilace.
Následující pragmas jsou zachovány jako část PCH a vliv na zbytek kompilace, která používá PCH.
alloc_text |
include_alias |
Pack |
auto_inline |
init_seg |
pointers_to_members |
check_stack |
inline_depth |
setlocale |
code_seg |
inline_recursion |
vtordisp |
data_seg |
vnitřní |
upozornění |
funkce |
optimalizovat |
|
Viz také
Referenční dokumentace
Pravidla konzistence předkompilovaný záhlaví