Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сообщает компилятору создать блоки заголовков, указанные входными аргументами. Компилятор создает блоки заголовков в виде файлов IFC (.ifc).
Синтаксис
/exportHeader /headerName:angleheader-name
/exportHeader /headerName:quoteheader-name
/exportHeaderfull path to header file
Arguments
Аргументом /exportHeader является параметр командной строки, указывающий /headerName имя файла header-nameзаголовка для экспорта.
Замечания
/exportHeader доступна начиная с Visual Studio 2019 версии 16.10.
Параметр /exportHeader компилятора требует включения /std:c++20 или более поздней версии параметра компилятора (например /std:c++latest).
Один /exportHeader параметр компилятора может указать столько аргументов имени заголовка, сколько требуется для сборки. Вам не нужно указывать их отдельно.
Компилятор неявно включает новый препроцессор при использовании этого параметра. То есть добавляется в командную строку компилятором, /Zc:preprocessor если в командной строке используется любая форма /exportHeader . Чтобы отказаться от неявного, используйте следующую /Zc:preprocessorкоманду: /Zc:preprocessor-
По умолчанию компилятор не создает файл объекта при компиляции единицы заголовка. Чтобы создать файл объекта, укажите параметр компилятора /Fo . Дополнительные сведения см. в разделе /Fo (Имя файла объекта).
Вы можете воспользоваться дополнительным вариантом /showResolvedHeader. Параметр /showResolvedHeader выводит абсолютный путь к файлу, в который header-name разрешается аргумент.
/exportHeader может одновременно обрабатывать несколько входных данных, даже под /MP. Мы рекомендуем /ifcOutput <directory> создать отдельный .ifc файл для каждой компиляции.
Примеры
Чтобы создать блок заголовка, <vector> например, может выглядеть следующим образом:
cl . . . /std:c++latest /exportHeader /headerName:angle vector
Создание локального заголовка проекта, например "utils/util.h" может выглядеть следующим образом:
cl . . . /std:c++latest /exportHeader /headerName:quote util/util.h
Установка данного параметра компилятора в среде разработки Visual Studio
Обычно этот параметр не следует задавать в среде разработки Visual Studio, если для файлов заголовков не используется другое расширение. По умолчанию система сборки применяет этот параметр к скомпилированных файлам с расширением .h или без расширения.
Чтобы применить
/exportHeaderпараметр к файлу явно в интегрированной среде разработки, выберите файл в обозревателе решений. Щелкните правой кнопкой мыши, чтобы открыть контекстное меню и выберите "Свойства ", чтобы открыть диалоговое окно "Страницы свойств".Задайте раскрывающийся список "Конфигурация" для всех конфигураций. Установите раскрывающийся список "Платформа" на всех платформах.
Откройте страницусвойств> конфигурацииC/C++>Advanced.
Используйте раскрывающийся список, чтобы изменить свойство "Компиляция как единица заголовка C++" (/exportHeader). Нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.
См. также
/headerName (Создание единицы заголовка из указанного заголовка)
/headerUnit (Использование единицы заголовка IFC)
/reference (Используйте именованный модуль IFC)
/translateInclude (Перевод директив include в директивы импорта)