Поделиться через


/headerName (Создание единицы заголовка из указанного заголовка)

Создайте указанный файл заголовка в единицу заголовка (.ifc файл).

Синтаксис

/headerName:quote header-filename
/headerName:angle header-filename

Аргументы

header-filename
Имя файла заголовка, который компилятор должен скомпилировать в единицу заголовка (.ifc файл).

Замечания

/headerName:angle Параметры /headerName:quote компилятора доступны начиная с Visual Studio 2019 версии 16.10.

Параметры /headerName компилятора во всех их формах требуют /std:c++20 или более поздней версии параметра компилятора (например /std:c++latest).
Если указать /headerName параметр, необходимо также указать /exportHeader.

  • /headerName:quoteheader-filename ищет те же правила, что #include "header-filename" и создает его как блок заголовка (.ifcфайл).
  • /headerName:angleheader-filename ищет те же правила, что #include <header-filename> и создает его как блок заголовка (.ifcфайл).

Дополнительные сведения о правилах поиска пути для включенных файлов в кавычки или угловые скобки см#include. в директиве.

Примеры

Учитывая проект, ссылающийся на файл заголовка, который он определяет, параметр компилятора для компиляции его в блок заголовков m.hвыглядит примерно так:

cl /std:c++latest /exportHeader /headerName:quote m.h /Fom.h.obj

/headerName:angle Параметры /headerName:quote действуют как флаг и не нуждаются в аргументе. Ниже приведены допустимые примеры.

cl /std:c++latest /exportHeader /headerName:angle /MP /Fo.\ vector iostream algorithm
cl /std:c++latest /exportHeader /headerName:quote /MP /Fo.\ my-utilities.h a/b/my-core.h

Можно указать несколько /headerName параметров в одной командной строке. Каждый аргумент после /headerName обработки параметра с указанными правилами подстановки файлов для кавычек или угловых квадратных скобок до следующего /headerName параметра. В следующем примере все заголовки обрабатываются так же, как и в предыдущих двух примерах командной строки. Он ищет заголовки с помощью правил подстановки, применяемых, как если бы они были указаны как: #include <vector>, , #include <iostream>, #include <algorithm>#include "my-utilties.h"и #include "a/b/my-core.h":

cl /std:c++latest /exportHeader /headerName:angle /MP /Fo.\ vector iostream algorithm /headerName:quote my-utilities.h a/b/my-core.h

Установка данного параметра компилятора в среде разработки Visual Studio

Примечание.

Обычно этот параметр не следует задавать в среде разработки Visual Studio. Он устанавливается системой сборки.

  1. Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.

  2. Установите раскрывающийся список "Конфигурация" для всех конфигураций. В раскрывающемся списке Платформа выберите пункт Все платформы.

  3. Перейдите на страницу свойств Свойства конфигурации>C/C++>Командная строка.

  4. Измените свойство "Дополнительные параметры", чтобы добавить или /headerName:angle параметры /headerName:quote и имена заголовков, к которые применяются параметры. Затем нажмите кнопку "ОК" или "Применить", чтобы сохранить изменения.

См. также

/exportHeader (создание единиц заголовков)
/headerUnit (использование IFC для единицы заголовка)
/reference (использование IFC для именованного модуля)
/translateInclude (преобразование директив include в директивы import)