/Yu (usar arquivo de cabeçalho pré-compilado)
Instrui o compilador para usar um arquivo de cabeçalho pré-compilado existente (.pch) na compilação atual.
/Yu[filename]
Arguments
- filename
O nome de um arquivo de cabeçalho, que está incluído no arquivo de origem usando uma política de pré-processador de #include .
Comentários
O nome do arquivo incluir deve ser o mesmo para a opção de /Yc que cria o cabeçalho pré-compilado e qualquer opção subsequente de /Yu que indicam o uso do cabeçalho pré-compilado.
Para /Yc, filename especifica o ponto em que o precompilation para; o compilador precompiles todo o código embora filename e nomeia o cabeçalho pré-compilado resultante usando o nome de arquivo e de incluir uma extensão de .pch.
O arquivo de .pch deve ter sido criado usando /Yc.
O compilador trata qualquer código que ocorre antes que o arquivo de .h como pré-compilado. Ignora apenas além da política de #include ao associada ao arquivo de .h, use o código contido no arquivo de .pch, e depois criará todo o código após filename.
Na linha de comando, nenhum espaço é permitido entre /Yu e filename.
Quando você especifica a opção de /Yu sem um nome de arquivo, o programa de origem deve conter um pragma que especifica o nome do arquivo de cabeçalho pré-compilado, o arquivo de hdrstop de #pragma de .pch. Nesse caso, o compilador usará o cabeçalho pré-compilado (arquivo de .pch) nomeada por /Fp (nomear arquivo .Pch). O compilador salta para o local do pragma, restaura o estado criado a partir do arquivo de cabeçalho pré-compilado especificado pelo pragma, e depois criará somente o código que segue o pragma. Se #pragma hdrstop não especificar um nome de arquivo, o compilador procura um arquivo com um nome derivado do nome de arquivo de origem por uma extensão de .pch. Você também pode usar a opção de /Fp especificar um arquivo diferente de .pch.
Se você especificar a opção de /Yu sem um nome de arquivo e uma falha especificar um pragma de hdrstop , será gerada uma mensagem de erro e a compilação é bem-sucedida.
Se /Ycfilename e as opções de /Yufilename ocorrem na mesma linha de comando e ambos fazem referência ao mesmo nome de arquivo, /Ycfilename prevalece, precompiling todo o código até e incluindo o arquivo chamado. Esse recurso simplifica a gravação de makefiles.
Como os arquivos de .pch contêm informações sobre o ambiente do computador bem como informações de endereço de memória sobre o programa, você só deve usar um arquivo de pch no computador em que 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 Propriedade do projeto. Para obter detalhes, consulte Como abrir páginas de propriedade do projeto.
Clique na pasta C/C++.
Clique na página de propriedades de Cabeçalhos Pré-Compilados .
Modifique a propriedade de Criar/uso com PCH Arquivo ou a propriedade de Cabeçalho pré-compilado criar/uso .
Para definir essa opção do compilador via programação
- Consulte PrecompiledHeaderThrough e UsePrecompiledHeader.
Exemplos
Se o seguinte código:
#include <afxwin.h> // Include header for class library
#include "resource.h" // Include resource definitions
#include "myapp.h" // Include information specific to this app
...
é compilado com a linha de comando CL /YuMYAPP.H PROG.CPP, o compilador não processa os três incluem o código pré-compilada de instruções mas de MYAPP.pch, economizando assim o tempo envolvidos neles todos os três arquivos (e para alguns arquivos que podem incluir).
Você pode usar a opção de /Fp (nomear arquivo .Pch) com a opção de /Yu especifique o nome do arquivo de .pch se o nome for diferente do argumento de nome de arquivo a /Yc ou o nome de arquivo de origem, como a seguir:
CL /YuMYAPP.H /FpMYPCH.pch PROG.CPP
Esse comando especifica um arquivo de cabeçalho pré-compilado nomeada 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. O compilador compilará o código que ocorre após a instrução de MYAPP.h include .