Partilhar via


Arquivos PCH no processo de compilação

Geralmente, a base de código de um projeto de software está contida em vários c ou C++ arquivos de origem, arquivos de objeto, bibliotecas e arquivos de cabeçalho. Normalmente, um makefile coordena a combinação desses elementos em um arquivo executável. A figura a seguir mostra a estrutura de um makefile que usa um arquivo de cabeçalho pré-compilado. Os nomes de macro NMAKE e os nomes de arquivo neste diagrama são consistentes com aquelas no código de exemplo encontrado em Makefile de amostra para PCH e Código de exemplo para PCH.

A Figura usa três dispositivos diagramáticas para mostrar o fluxo do processo de compilação. Chamado retângulos representam cada arquivo ou macro; as três macros representam um ou mais arquivos. Áreas sombreadas representam cada ação de compilação ou link. As setas mostram quais arquivos e as macros são combinadas durante a compilação ou de um processo de vinculação.

Estrutura de um Makefile que usa um arquivo de cabeçalho pré-compilado

Makefile que usa um arquivo de cabeçalho pré-compilado

Começando da parte superior do diagrama, STABLEHDRS e o autônomo no qual você provavelmente não precisará de recompilação de arquivos de lista de macros NMAKE são. Esses arquivos são compilados usando a seqüência de comando

CL /c /W3 /Yc$(BOUNDRY) applib.cpp myapp.cpp

somente se o arquivo de cabeçalho pré-compilado (STABLE.pch) não existe ou se você fizer alterações nos arquivos listados em duas macros. Em ambos os casos, o arquivo de cabeçalho pré-compilado conterá o código apenas dos arquivos listados na macro STABLEHDRS. Liste o último arquivo que você deseja pré-compilado na macro autônomo.

Os arquivos que você listar as macros podem ser arquivos de cabeçalho ou de arquivos de código-fonte c ou C++. (Um arquivo de .pch único não pode ser usado com os módulos de c e C++.) Observe que você pode usar o hdrstop macro parar a pré-compilação em algum momento dentro do arquivo autônomo. Consulte hdrstop para obter mais informações.

Continuando para baixo no diagrama, o APPLIB.obj representa o código de suporte usado em sua aplicação final. Ele é criado a partir de APPLIB.cpp, os arquivos listados na macro UNSTABLEHDRS e pré-compilado código do cabeçalho pré-compilado.

MYAPP.obj representa a sua aplicação final. Ele é criado a partir de MYAPP.cpp, os arquivos listados na macro UNSTABLEHDRS e pré-compilado código do cabeçalho pré-compilado.

Finalmente, o arquivo executável (MYAPP.EXE) é criado, vinculando os arquivos listados na macro de OBJETOS (APPLIB.obj e MYAPP.obj).

Para mais discussões sobre a figura, consulte:

Consulte também

Referência

Usando cabeçalhos pré-compilados em um projeto