/Yu
(Usar arquivo de cabeçalho pré-compilado)
Instrui o compilador a usar um arquivo de cabeçalho pré-compilado ( .pch
) existente na compilação atual.
Syntax
/Yu
[nome do arquivo]
Argumentos
filename
O nome de um arquivo de cabeçalho, que é incluído no arquivo de origem usando uma diretiva de #include
pré-processador.
Comentários
O nome do arquivo de inclusão deve ser o mesmo para a /Yc
opção que cria o cabeçalho pré-compilado e para qualquer opção posterior /Yu
que indica o uso do cabeçalho pré-compilado.
Para /Yc
, filename especifica o ponto em que a pré-compilação é interrompida; o compilador pré-compila todos os códigos, embora o nome do arquivo, e nomeia o cabeçalho pré-compilado resultante usando o nome de base do arquivo de inclusão e uma extensão do .pch
.
O .pch
arquivo deve ter sido criado usando /Yc
.
O compilador trata todo o código que ocorre antes do arquivo. h como pré-compilado. Ele ignora apenas além da diretiva associada .h
ao arquivo, usa o código contido no arquivo e, em seguida, compila todo o código após o #include
nomedo .pch
arquivo.
Na linha de comando, nenhum espaço é permitido entre /Yu
e filename.
Quando você especifica a /Yu
opção sem um nome de arquivo, o programa de origem deve conter um #pragma hdrstop
pragma que especifica o nome do arquivo do cabeçalho pré-compilado, .pch
arquivo. Nesse caso, o compilador usará o cabeçalho pré-compilado ( .pch
arquivo) nomeado por /Fp (Name .pch file)
. O compilador pula para o local desse pragma e restaura o estado compilado do arquivo de cabeçalho pré-compilado especificado. Em seguida, ele compila apenas o código que segue o pragma. Se #pragma hdrstop
o não especificar um nome de arquivo, o compilador procurará um arquivo com um nome derivado do nome base do arquivo de origem com uma .pch
extensão. Você também pode usar a /Fp
opção para especificar um arquivo diferente .pch
.
Se você especificar a /Yu
opção sem um nome de arquivo e falhar ao especificar um hdrstop
pragma, uma mensagem de erro será gerada e a compilação não será bem-sucedida.
Se as /Yc
opções filename e /Yu
filename ocorrerem na mesma linha de comando e fizerem referência ao mesmo nome de arquivo, /Yc
filename terá precedência, Precompilando todo o código até e incluindo o arquivo nomeado. Esse recurso simplifica a gravação de makefiles.
Como .pch
os arquivos contêm informações sobre o ambiente de computador e as informações de endereço de memória sobre o programa, você deve usar apenas um .pch
arquivo no computador em que ele foi criado.
Para obter mais informações sobre cabeçalhos pré-compilados, consulte:
Para definir esta opção do compilador no ambiente de desenvolvimento do Visual Studio
Especifique
/Yc
(criar arquivo de cabeçalho pré-compilado) em um arquivo. cpp em seu projeto.Abra a caixa de diálogo Páginas de Propriedades do projeto. Para obter detalhes, confira Definir as propriedades de build e do compilador do C++ no Visual Studio.
Selecione a página de propriedade decabeçalhos pré-compilados de Propriedades> de configuraçãoC/C++> .
Modifique a propriedade de cabeçalho pré-compilada , a propriedade Criar/usar PCH por arquivo ou a propriedade Criar/usar cabeçalho pré-compilado .
Para definir essa opção do compilador via programação
Exemplo
Se o código a seguir:
#include <afxwin.h> // Include header for class library
#include "resource.h" // Include resource definitions
#include "myapp.h" // Include information specific to this app
...
é compilado usando a linha CL /YuMYAPP.H PROG.CPP
de comando, o compilador não processa as três instruções include. Em vez disso, ele usa código pré-compilado do MYAPP.pch
, que economiza o tempo envolvido no pré-processamento de todos os três arquivos (e quaisquer arquivos que possam incluir).
Você pode usar a /Fp (Name .pch file)
opção com a /Yu
opção de especificar o nome do .pch
arquivo se o nome for diferente do argumento /Yc
filename ou do nome base do arquivo de origem, como no exemplo a seguir:
CL /YuMYAPP.H /FpMYPCH.pch PROG.CPP
Este comando especifica um arquivo de cabeçalho pré-compilado chamado MYPCH.pch
. O compilador usa seu conteúdo para restaurar o estado pré-compilado de todos os arquivos de cabeçalho até e incluindo MYAPP.h
. Em seguida, o compilador compila o código que ocorre após a #include "MYAPP.h"
diretiva *.
Consulte também
Opções do compilador MSVC
Sintaxe da linha de comando do compilador MSVC