/Yc (создать предварительно скомпилированный заголовочный файл)
Указывает компилятору создать предварительно скомпилированный файл заголовков (PCH), представляющий состояние компиляции в некоторой точке.
/Yc[filename]
Аргументы
- filename
Указывает файл заголовков (H). При использовании этого аргумента компилятор компилирует весь код, включая H-файл.
Заметки
Если /Yc указан без аргумента, компилятор компилирует весь код до конца базового исходного файла или до точки в базовом файле, где возникло событие hdrstop. Итоговый PCH-файл имеет то же базовое имя, что и базовый исходный файл, если не указано другое имя файла с помощью прагмы hdrstop или параметра /Fp.
Предварительно скомпилированный код сохраняется в файле с именем, созданным из базового имени файла, указанного с помощью параметра /Yc и с расширением PCH. Чтобы указать имя для предварительно скомпилированного заголовочного файла, можно также использовать параметр /Fp (имя PCH-файла).
Если используется /Ycfilename, компилятор компилирует весь код, включая указанный файл для последующего использования с параметром /Yu.
Если параметры /Ycfilename и /Yu (использование файла предкомпилированного заголовка)filename встречаются в одной командной строке и обеих ссылках или заключают в себе одинаковое имя файла, параметр /Ycfilename получает приоритет. Это позволяет упростить создание файлов makefile.
Дополнительные сведения о предкомпилированных заголовках см. в разделах:
Установка данного параметра компилятора в среде разработки Visual Studio
Выберите файл CPP. CPP-файл должен включать H-файл, который содержит сведения о предкомпилированных заголовках. Параметр /Yc проекта должен быть переопределен на уровне файла.
Откройте диалоговое окно Страницы свойств проекта. Подробные сведения см. в разделе Открытие свойств страниц проекта.
Щелкните папку C/C++.
Щелкните страницу свойств Предкомпилированные заголовки.
Измените свойство Создание/использование PCH-файла до файла включительно или Создание/использование предкомпилированного заголовка.
Установка данного параметра компилятора программным способом
- См. разделы PrecompiledHeaderThrough и UsePrecompiledHeader.
Пример
Рассмотрим следующий код:
#include <afxwin.h> // Include header for class library
#include "resource.h" // Include resource definitions
#include "myapp.h" // Include information specific to this app
...
При компилировании этого кода с помощью команды CL /YcMYAPP.H PROG.CPP компилятор сохраняет всю предварительную обработку для AFXWIN.h, RESOURCE.h и MYAPP.h в файле предварительно скомпилированного заголовочного файла с именем MYAPP.pch.