Partilhar via


Aviso do compilador (nível 1) C4727

"A PCH nomeou pch_file com o mesmo carimbo de data/hora encontrado em obj_file_1 e obj_file_2. Usando a primeira PCH.

Observações

Observação

No Visual Studio 2017 e anteriores, o cabeçalho pré-compilado é chamado stdafx.h por padrão e, no Visual Studio 2019 e posterior, é chamado pch.h por padrão.

C4727 ocorre ao compilar vários compilands com /Yc, e onde o compilador foi capaz de marcar todos os arquivos .obj com o mesmo carimbo de data/hora .pch.

Para resolver, compile um arquivo de origem com /Yc /c (cria pch), e os outros compilem separadamente com /Yu /c (usa pch), em seguida, vincule-os juntos.

Example

Então, se você fez o seguinte e gera C4727:

cl /clr /GL a.cpp b.cpp c.cpp /Ycstdafx.h

Em vez disso, você faria o seguinte:

cl /clr /GL a.cpp /Ycstdafx.h /c

cl /clr /GL b.cpp c.cpp /Yustdafx.h /link a.obj

cl /clr /GL a.cpp b.cpp c.cpp /Ycpch.h

Em vez disso, você faria o seguinte:

cl /clr /GL a.cpp /Ycpch.h /c

cl /clr /GL b.cpp c.cpp /Yupch.h /link a.obj

Para obter mais informações, veja