Sdílet prostřednictvím


Pravidla konzistence pro použití předkompilovaných hlaviček podle souborů

/Yu možnost kompilátoru umožňuje určit, které předkompilovaného souboru hlaviček (PCH) používat.

Při použití PCH kompilátor předpokládá stejné prostředí kompilace – pomocí možnosti kompilátoru konzistentní, pragma atd, který byl ve skutečnosti při vytváření PCH, pokud neurčíte jinak.Pokud kompilátor zjistí nekonzistenci, vydá varování a identifikuje nekonzistencí, kde je to možné.Tato výstražná upozornění nemusí znamenat potíže s PCH; jednoduše upozorňují na je možné konflikty.V následujících částech jsou popsány požadavky konzistence PCHs.

Konzistence možnost kompilátoru

Při použití PCH, může vyvolat následující volby kompilátoru na nekonzistenci varování:

  • Makra vytvořená pomocí preprocesoru (/ D) možnost musí být mezi kompilace, vytvořený PCH a aktuální kompilace.Není kontrolován stav definované konstanty, ale neočekávané výsledky může dojít, pokud tato změna.

  • PCHs nelze použít s parametry/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ých kompilací, které používají PCH mohli používat tyto možnosti.

C 7.0 kompatibilní (/ Z7)

Pokud tato možnost platí, když je vytvořen PCH, následných kompilací, které používají PCH použít ladicí informace.

Pokud C 7.0 kompatibilní (/ Z7) není ve skutečnosti při vytvoření PCH, následných kompilací, které používají PCH a /Z7 aktivovat upozornění.Informace o ladění je umístěn v aktuálním souboru obj a místní symboly definované v PCH nejsou k dispozici 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.

Zdrojový soubor konzistence

Pokud zadáte možnost Použít předkompilovaný soubor hlaviček (/Yu), kompilátor ignoruje všechny direktivy preprocesoru (včetně pragma) obsažené ve zdrojovém kódu, který bude předkompilována.Kompilace podle těchto direktiv preprocesoru musí být stejný jako kompilace pro možnost Vytvořit předkompilovaný soubor hlaviček (/Yc).

Konzistence pragma

Pragma obvykle zpracovány během vytváření PCH vliv na soubor, ke kterému PCH následně použity.Pragma komentář a zprávy nemají vliv na zbytek kompilace.

Následující pragma jsou uchovány jako součást PCH a vliv na zbývající část kompilace, který používá PCH.

alloc_text

include_alias

balík

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ých hlaviček

/Yu (Použít předkompilovaný hlavičkový soubor)

Možnosti kompilátoru