Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
Instructs the compiler to create a precompiled header (.pch) file that represents the state of compilation at a certain point.
/Yc[filename]
Arguments
- filename
Specifies a header (.h) file. When this argument is used, the compiler compiles all code up to and including the .h file.
Remarks
When /Yc is specified without an argument, the compiler compiles all code up to the end of the base source file, or to the point in the base file where a hdrstop occurs. The resulting .pch file has the same base name as your base source file unless you specify a different file name using the hdrstop pragma or the /Fp option.
The precompiled code is saved in a file with a name created from the base name of the file specified with the /Yc option and a .pch extension. You can also use the /Fp (Name .Pch File) option to specify a name for the precompiled header file.
If you use /Ycfilename, the compiler compiles all code up to and including the specified file for subsequent use with the /Yu option.
If the options /Ycfilename and /Yu (Use Precompiled Header File)filename occur on the same command line and both reference, or imply, the same file name, /Ycfilename takes precedence. This feature simplifies the writing of makefiles.
For more information on precompiled headers, see:
To set this compiler option in the Visual Studio development environment
Select a .cpp file. The .cpp file must #include the .h file that contains precompiled header information. The project's /Yc setting can be overridden at the file level.
Open the project's Property Pages dialog box. For details, see How to: Open Project Property Pages.
Click the C/C++ folder.
Click the Precompiled Headers property page.
Modify the Create/Use PCH Through File property or the Create/Use Precompiled Header property.
To set this compiler option programmatically
Example
Consider the following code:
#include <afxwin.h> // Include header for class library
#include "resource.h" // Include resource definitions
#include "myapp.h" // Include information specific to this app
...
When this code is compiled with the command CL /YcMYAPP.H PROG.CPP, the compiler saves all the preprocessing for AFXWIN.h, RESOURCE.h, and MYAPP.h in a precompiled header file called MYAPP.pch.