Partilhar via


Regras de consistência para uso por arquivo de cabeçalhos pré-compilados

The /Yu compilador opção permite que você especifique qual pré-compilado o arquivo de cabeçalho (PCH) a ser usado.

Quando você usa um PCH, o compilador pressupõe o mesmo ambiente de compilação — usando opções do compilador consistente, pragmas e assim por diante — que estava em vigor quando você criou PCH, a menos que você especifique o contrário.Se o compilador detectar uma inconsistência, ele emite um aviso e identifica a inconsistência sempre que possível.Esses avisos não indicam necessariamente um problema com o PCH; eles simplesmente avisá-lo de possíveis conflitos.Requisitos de consistência para PCHs são descritos nas seções a seguintes.

Consistência de opção do compilador

As opções do compilador podem disparar um aviso de inconsistência ao usar um PCH:

  • As macros criadas usando o pré-processador (/ D) opção deve ser o mesmo entre a compilação que criou o PCH e a compilação corrente.O estado de constantes definidas não está marcado, mas podem ocorrer resultados imprevisíveis se esses alterar.

  • PCHs não funcionam com as opções /E e /EP.

  • PCHs devem ser criados usando qualquer um da gerar procurar informações (/ FR) opção ou as variáveis locais Exclude (/ FR) para compilações subseqüentes que usam o PCH podem usar essas opções de opção.

Compatível com 7.0 C (/ Z7)

Se essa opção está em vigor quando o PCH é criado, compilações subseqüentes que usam o PCH podem usar as informações de depuração.

Se o C compatível com 7.0 (/ Z7) opção não está em vigor quando o PCH é criado, compilações subseqüentes que usar PCH e /Z7 acionam um aviso.As informações de depuração são colocadas no corrente arquivo .obj e símbolos locais definidos o PCH não estão disponível para o depurador.

Incluir caminho consistência

Um PCH não contém informações sobre o caminho de inclusão que estava em vigor quando ele foi criado.Quando você usa um arquivo .pch, o compilador sempre usa o caminho de inclusão especificado na compilação corrente.

Consistência de arquivo de fonte

Quando você especifica a opção arquivo de cabeçalho pré-compilados (/YU) usar, o compilador ignora todas as diretivas de pré-processador (incluindo pragmas) que aparecem no código-fonte que irá ser pré-compilado.A compilação especificada por essas diretivas de pré-processador deve ser o mesmo que a compilação usada para a opção Criar arquivo Precompiled do cabeçalho (/Yc)

Consistência pragma

Pragmas processadas durante a criação de um PCH geralmente afetam o arquivo com o qual o PCH é usada subseqüentemente.Pragmas comentário e a mensagem não afetam o restante da compilação.

Pragmas seguintes são mantidos sistema autônomo parte de um PCH e afetar o restante de uma compilação que usa o PCH.

alloc_text

include_alias

empacotar

auto_inline

init_seg

pointers_to_members

check_stack

inline_depth

setlocale

code_seg

inline_recursion

vtordisp

data_seg

intrínseco

Aviso

função

otimizar

 

Consulte também

Referência

Regras de consistência de cabeçalho pré-compilados

/Yu (arquivo de cabeçalho pré-compilados de uso)

Opções do compilador