### Preprocessing and Precompiling

When precompiling a header file, the compiler preprocesses the file too. In other words, a precompiled file is preprocessed in the context of its precompilation, not in the context of its compilation.

The preprocessor also tracks macros used to guard #include files to reduce parsing time. Thus, if a file’s contents are surrounded with:

#ifndef FOO_H
#define FOO_H
// file contents
#endif

The compiler will not load the file twice, saving some small amount of time in the process.