Share via


Upozornění kompilátoru (úroveň 1) C4727

"PCH pojmenovaný pch_file se stejným časovým razítkem nalezeným v obj_file_1 a obj_file_2. Použití prvního PCH.

Poznámka

V sadě Visual Studio 2017 a starších verzích se předkompilovaná hlavička standardně nazývá stdafx.h a v sadě Visual Studio 2019 a novější se ve výchozím nastavení nazývá pch.h .

C4727 nastane při kompilaci více compilands s /Yc a kde kompilátor mohl označit všechny soubory .obj se stejným časovým razítkem .pch.

Pokud chcete tento problém vyřešit, zkompilujte jeden zdrojový soubor pomocí /Yc /c (vytvoří pch) a ostatní se kompilují samostatně pomocí /Yu /c (používá pch), pak je propojte dohromady.

Pokud jste tedy provedli následující kroky a vygeneroval C4727:

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

Místo toho byste udělali toto:

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

Místo toho byste udělali toto:

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

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

Další informace viz