Страницы свойств C/C++
Следующие страницы свойств находятся в разделе "Свойства>>конфигурации проекта>" C/C++:
Общие свойства C/C++
Дополнительные каталоги включаемых файлов
Добавляет один или несколько каталогов для добавление к пути включения. Разделяйте каталоги с запятыми (';
) при наличии нескольких каталогов. /I
Задает параметр компилятора (дополнительные каталоги включения).
Дополнительные каталоги #using
Указывает один или несколько каталогов для поиска, чтобы разрешить имена, переданные директиве #using
. Разделяйте каталоги с запятыми (';
) при наличии нескольких каталогов. Задает параметр компилятора /AI
.
Дополнительные каталоги BMI
Указывает один или несколько каталогов для поиска для разрешения имен, переданных директиве import
. Разделяйте каталоги с запятыми (';
) при наличии нескольких каталогов. Задает параметр компилятора /ifcSearchDir[path]
.
Дополнительные зависимости модулей
Указывает один или несколько модулей, используемых для разрешения имен, переданных директиве import
. Разделяйте каталоги с запятыми (';
) при наличии нескольких каталогов. Задает параметр компилятора /reference
.
Дополнительные зависимости единиц заголовка
Указывает один или несколько единиц заголовков, используемых для разрешения имен, передаваемых директиве заголовка import
. Разделяйте каталоги с запятыми (';
) при наличии нескольких каталогов. Задает параметр компилятора /headerUnit
.
Источники сканирования для зависимостей модуля
Если задано значение "Да", компилятор сканирует все источники C++, а не только интерфейс модуля и источники единиц заголовка для зависимостей модулей и блоков заголовков. Система сборки создает полный граф зависимостей, который гарантирует, что все импортированные модули и блоки заголовков создаются перед компиляцией файлов, зависящих от них. При сочетании с преобразованием "Включает в импорт" любой файл заголовка, указанный в header-units.json
файле в том же каталоге, что и файл заголовка, компилируется в единицу заголовка.
Файлы с расширением .ixx
и файлы с их свойствами>"Файл" C/C++>Compile As задано значение "Компиляция как единица заголовка C++" (/exportHeader) всегда сканируются.
Перевод в импорт
Если задано значение "Да", компилятор обрабатывает #include
директиву как директиву import
, если выполняются определенные условия: файл заголовка указывается в header-units.json
файле в том же каталоге, а скомпилированный блок заголовка ( .ifc
файл) доступен для файла заголовка. В противном случае файл заголовка рассматривается как обычный #include
. Файл header-units.json
используется для создания блоков заголовков для каждого #include
без дублирования символов. В сочетании с источниками сканирования для зависимостей модуля компилятор автоматически находит все файлы заголовков, которые можно скомпилировать в единицы заголовков. Это свойство задает параметр компилятора /translateInclude
.
Формат отладочной информации
Определяет тип отладочной информации, создаваемой компилятором. Для этого свойства требуются совместимые параметры компоновщика. Задает /Z7
параметры компилятора , /Zi
/ZI
(формат сведений отладки).
Варианты выбора
- Нет — отладочная информация не создается для ускорения компиляции.
- Совместимость C7. Выберите тип сведений об отладке, созданных для программы, и хранится ли эта информация в файлах объектов (.obj) или в базе данных программы (PDB).
- База данных программы — создает базу данных программы (PDB), содержащую сведения о типе и символьную отладку для использования с отладчиком. Сведения о символьной отладке включают имена и типы переменных и функций, а также номера строк.
- База данных программы для изменения и продолжения — создает базу данных программы, как описано ранее, в формате, поддерживающем функцию "Изменить и продолжить ".
Поддержка отладки только моего кода
Добавляет вспомогательный код для включения отладки Just My Code в этом уроке компиляции. Наборы /JMC
.
Поддержка cl language RunTime
Используйте службу среды выполнения .NET. Этот коммутатор несовместим с некоторыми другими коммутаторами; Дополнительные сведения см. в документации по семейству /clr
коммутаторов.
Варианты выбора
- Поддержка cl language RunTime не поддерживается. Поддержка cl language RunTime не поддерживается
- Поддержка ClTime— создает метаданные для приложения, которые могут использоваться другими приложениями СРЕДЫ CLR. Кроме того, приложение может использовать типы и данные в метаданных других компонентов СРЕДЫ CLR.
- Pure MSIL Common Language RunTime Support — создает выходной файл только MSIL без собственного исполняемого кода, хотя он может содержать собственные типы, скомпилированные в MSIL.
- Безопасная поддержка cltime для общего языка MSIL — создает только MSIL (собственный исполняемый код) и проверяемый выходной файл.
Использование расширения среда выполнения Windows
Использование расширений языков времени выполнения Windows. Наборы /ZW
.
Отключить загрузочное объявление
Подавляет отображение баннера входа при запуске компилятора и отображении информационных сообщений во время компиляции.
Уровень предупреждений
Выберите, как строго компилятор должен воспринимать ошибки в коде. Наборы /W0
- /W4
.
Варианты выбора
- Отключить все предупреждения . Уровень 0 отключает все предупреждения.
- Уровень 1 . Уровень 1 отображает серьезные предупреждения. Уровень 1 — это уровень предупреждения по умолчанию в командной строке.
- Уровень 2 . Уровень 2 отображает все предупреждения и предупреждения уровня 1, менее тяжелые, чем уровень 1.
- Уровень 3 . Уровень 3 отображает все предупреждения уровня 2 и все другие предупреждения, рекомендуемые для рабочих целей.
- Уровень 4 — уровень 4 отображает все предупреждения уровня 3 и информационные предупреждения, которые в большинстве случаев можно безопасно игнорировать.
- EnableAllWarnings — включает все предупреждения, включая отключенные по умолчанию.
Обрабатывать предупреждения как ошибки
Обрабатывает предупреждения компилятора как ошибки. Для нового проекта лучше всего использовать /WX
в каждой компиляции. Устраните все предупреждения, чтобы свести к минимуму дефекты кода, которые трудно найти.
Версия предупреждения
Скрыть предупреждения, появившиеся после определенной версии компилятора. Наборы /Wv:xx[.yy[.zzzzz]]
.
Формат диагностики
Включает расширенные диагностика с информацией о столбцах и контекстом источника в диагностических сообщениях.
Варианты выбора
- Caret — предоставляет сведения о столбце в диагностическом сообщении. И выводит соответствующую строку исходного кода с помощью курсора, указывающего на неустранимый столбец.
- Сведения о столбце— дополнительно предоставляет номер столбца в строке, в которой выдается диагностика, где применимо.
- Классический — выводит только предыдущие краткие диагностические сообщения с номером строки.
Проверки SDL
Рекомендуемые проверки дополнительного жизненного цикла разработки безопасности (SDL); включает включение дополнительных функций создания защищенного кода и включает дополнительные предупреждения, относящиеся к безопасности, в качестве ошибок. Наборы /sdl
, /sdl-
.
Многопроцессорная компиляция
Включите компиляцию с несколькими процессорами. Задает параметр компилятора /MP
.
Включить санитайзер адресов
Компилирует и связывает программу с инструментированием AddressSanitizer. Это свойство в настоящее время поддерживает сборки x86 и x64. Задает параметр компилятора /fsanitize
.
Свойства оптимизации C/C++
Optimization
Выбор параметра для оптимизации кода; Выберите "Настраиваемый" для использования определенных параметров оптимизации. Наборы /Od
, ,/O1
/O2
.
Варианты выбора
- Настраиваемый — настраиваемая оптимизация.
- Отключено — отключить оптимизацию.
- Максимальная оптимизация (размер пользу) — эквивалентно
/Os /Oy /Ob2 /Gs /GF /Gy
- Максимальная оптимизация (скорость пользу) — эквивалентно
/Oi /Ot /Oy /Ob2 /Gs /GF /Gy
- Оптимизация (скорость благоприясти) — эквивалентно
/Oi /Ot /Oy /Ob2
Расширение встроенной функции
Выберите уровень расширения встроенной функции для сборки. Наборы /Ob
.
Варианты выбора
- По умолчанию
- Отключено — отключает встроенное расширение, которое по умолчанию включено.
- Только __inline — расширяет только функции, помеченные как
inline
,__forceinline
или__inline
. Или, в функции-члене C++, определенной в объявлении класса. - Любой подходящий элемент — развертывает функции, помеченные как
inline
или__inline
любую другую функцию, которую выбирает компилятор. (Расширение происходит по усмотрению компилятора, часто называемое автооблицированием.)
Включение встроенных функций
Включает встроенные функции. Использование встроенных функций приводит к более быстрому созданию кода, но, возможно, больше. Наборы /Oi
.
Предпочитать размер или скорость
Следует ли использовать размер кода или скорость кода; Должна быть включена глобальная оптимизация. Наборы /Ot
, /Os
.
Варианты выбора
- Рекомендуется использовать небольшой код . Сводит к минимуму размер EXEs и БИБЛИОТЕК DLL путем указания компилятору использовать размер по скорости.
- Предпочитать быстрый код . Максимально повышает скорость EXEs и БИБЛИОТЕК DLL путем указания компилятору использовать скорость по размеру. (Это значение по умолчанию.)
- Нет размера и оптимизации скорости.
Опущены указатели кадров
Отменяет создание указателей на фреймы в стеке вызовов.
Включение оптимизации с безопасностью волокон
Позволяет оптимизировать пространство памяти при использовании волокон и доступа к локальному хранилищу потока. Наборы /GT
.
Оптимизация всей программы
Обеспечивает оптимизацию между модулями путем задержки создания кода для связывания времени. Требуется параметр компоновщика link Time Code Generation. Наборы /GL
.
Свойства препроцессора C/C++
Определения препроцессора
Определяет символы предобработки для исходного файла.
Отменить определения препроцессора
Задает одну или несколько отмен определений препроцессора. Наборы /U
.
Отменить все определения препроцессора
Отменить все объявленные ранее определения препроцессора. Наборы /u
.
Игнорировать стандартные пути включения
Запрещает компилятору искать файлы в каталоги, указанные в переменных среды INCLUDE.
Предварительная обработка файла
Предварительно обрабатывает исходные файлы C и C++ и записывает предварительно обработанные выходные данные в файл. Этот параметр подавляет компиляцию и не создает .obj
файл.
Препроцесс подавление номеров строк
Предварительная обработка без директив #line.
Сохранение комментариев
Подавляет полосу комментариев из исходного кода; требует установки по крайней мере одного из параметров предварительной обработки . Наборы /C
.
Свойства создания кода C/C++
Включение пула строк
Компилятор создает только одну копию идентичных строк в образе программы только для чтения. Это приводит к более мелким программам, оптимизации, называемой пулом строк. /O1
, /O2
и /ZI
автоматически задать /GF
параметр.
Включение минимального перестроения
Включает минимальное перестроение, определяющее, следует ли перекомпилировать исходные файлы C++ с измененными определениями классов C++, хранящимися в файлах заголовков .h
.
Включить исключения C++
Задает модель обработки исключений, используемую компилятором.
Варианты выбора
- Да с исключениями SEH — модель обработки исключений, которая перехватывает асинхронные (структурированные) и синхронные исключения (C++). Наборы
/EHa
. - Да . Модель обработки исключений, которая перехватывает только исключения C++ и сообщает компилятору предположить, что внешние функции C не вызывают исключение C++. Наборы
/EHsc
. - Да с функциями Extern C — модель обработки исключений, которая перехватывает только исключения C++ и сообщает компилятору предположить, что экстерн-функции C создают исключение. Наборы
/EHs
. - Нет . Обработка исключений отсутствует.
Проверка меньшего типа
Включите проверку преобразования в небольшие типы, несовместимые с любым типом оптимизации, кроме отладки. Наборы /RTCc
.
Базовые проверки среды выполнения
Включите основные проверки ошибок среды выполнения, несовместимые с любым типом оптимизации, кроме отладки. Наборы /RTCs
, , /RTCu
/RTC1
.
Варианты выбора
- Кадры стека— включает проверку ошибок во время выполнения стека.
- Неинициализированные переменные — сообщает, когда переменная используется без инициализации.
- Оба (/RTC1, equiv. to /RTCsu) — эквивалент
/RTCsu
. - По умолчанию — проверки среды выполнения по умолчанию .
Библиотека времени выполнения
Определяет библиотеку среды выполнения для компоновки. Наборы/MT
, , /MD
/MTd
, /MDd
.
Варианты выбора
- Многопоточное — позволяет приложению использовать многопотоковую статическую версию библиотеки времени выполнения.
- Многопоточная отладка — определяет
_DEBUG
и_MT
. Этот параметр также приводит к тому, что компилятор помещает имяLIBCMTD.lib
библиотеки в.obj
файл, чтобы компоновщик использовалсяLIBCMTD.lib
для разрешения внешних символов. - Библиотека DLL с несколькими потоками — позволяет приложению использовать многопотоковую и библиотеку DLL библиотеки времени выполнения.
_MT
Определяет и_DLL
приводит к тому, что компилятор помещает имя библиотеки MSVCRT.lib в.obj
файл. - Многопоточная библиотека DLL отладки— определяет
_DEBUG
_MT
и приводит к тому, что приложение будет использовать отладочную многопоточную и_DLL
библиотеку DLL для библиотеки времени выполнения. Он также приводит к тому, что компилятор помещает имяMSVCRTD.lib
библиотеки.obj
в файл.
Выравнивание элементов структуры
Задает 1, 2, 4 или 8-байтовые границы для выравнивания элементов структуры. Наборы /Zp
.
Варианты выбора
- 1 Байт — пакеты структур на границах одного байта. Эквивалентно
/Zp
. - 2 байта — пакеты структур на двухбайтовых границах.
- 4 байта — пакеты структур на четырехбайтовых границах.
- 8 Байт — пакеты структур на восьмибайтовых границах (по умолчанию).
- 16 Байт — пакеты структур на шестнадцатибайтовых границах.
- По умолчанию — параметры выравнивания по умолчанию .
Проверка безопасности
Проверка безопасности помогает обнаруживать переполнения буфера стека, что является обычной попыткой обхода защиты программы.
Варианты выбора
- Отключить проверку безопасности — проверка безопасности отключается. Наборы
/GS-
. - Включить проверку безопасности — проверка безопасности включается. Наборы
/GS
.
Защита потока управления
Проверка безопасности guard помогает обнаруживать попытки отправки в незаконный блок кода.
Варианты выбора
- Да . Включение проверки безопасности с помощью наборов
/guard:cf
guard. - Нет
Включить компоновку на уровне функций
Компилятор может упаковывать отдельные функции в форме упакованных функций (COMDAT). Требуется для изменения и продолжения работы. Наборы /Gy
.
Включение параллельного создания кода
Позволяет компилятору создавать параллельный код для циклов, определенных при #pragma loop(hint_parallel[(n)])
включении оптимизации.
Включение расширенного набора инструкций
Включите использование инструкций, найденных на процессорах, поддерживающих расширенные наборы инструкций. Например, улучшения SSE, SSE2, AVX и AVX2 до IA-32. И усовершенствования AVX и AVX2 до x64. /arch:SSE
В настоящее время и /arch:SSE2
доступны только при сборке для архитектуры x86. Если параметр не указан, компилятор использует инструкции, найденные на процессорах, поддерживающих SSE2. Использование расширенных инструкций можно отключить с /arch:IA32
помощью . Дополнительные сведения см. в разделе /arch (x86)
, /arch (x64)
, /arch (ARM64)
, и /arch (ARM)
.
Варианты выбора
- Расширения SIMD потоковой передачи — расширения SIMD потоковой передачи. Задает
/arch:SSE
- Расширения SIMD потоковой передачи 2 — расширения SIMD потоковой передачи 2. Задает
/arch:SSE2
- Расширенные расширения векторов — расширенные расширения векторов. Задает
/arch:AVX
- Расширенные векторные расширения 2 — расширенные расширения векторов 2. Задает
/arch:AVX2
- Без расширенных инструкций — нет расширенных инструкций . Задает
/arch:IA32
- Не задано — не задано .
Модель с плавающей запятой
Задает модель с плавающей запятой. Наборы /fp:precise
, , /fp:strict
/fp:fast
.
Варианты выбора
- Точное значение — по умолчанию. Улучшает согласованность тестов с плавающей запятой для равенства и неравенства.
- Strict — самая строгая модель с плавающей запятой.
/fp:strict
вызываетfp_contract
отключение иfenv_access
значение ON./fp:except
подразумевается и может быть отключен явным/fp:except-
образом. При использовании с/fp:except-
,/fp:strict
применяет строгую семантику с плавающей запятой, но без уважения к исключительным событиям. - Быстрое создание самого быстрого кода в большинстве случаев.
Включение исключений с плавающей запятой
Надежная модель исключений с плавающей точкой. Исключения будут возникать сразу после их активации. Наборы /fp:except
.
Создание изображения с горячей совместимостью
При включении горячего исправления компилятор гарантирует, что первая инструкция каждой функции составляет два байта, как это необходимо для горячего исправления. Наборы /hotpatch
.
Устранение рисков Spectre
Устранение рисков spectre для CVE 2017-5753. Наборы /Qspectre
.
Варианты выбора
- Включена функция устранения рисков Spectre для CVE 2017-5753
- Отключено — не задано.
Свойства языка C/C++
Отключение расширений языка
Подавляет или включает расширения языка. Наборы /Za
.
Обрабатывать WChar_t как встроенный тип
При указании тип становится собственным типомwchar_t
, который сопоставляется таким же образом, с которым short
сопоставляется __wchar_t
__int16
. /Zc:wchar_t
включен по умолчанию.
Принудительное соответствие в области цикла
Реализует стандартное поведение C++ для for
циклов инструкций с расширениями Майкрософт. Наборы /Za
, /Ze
(отключение расширений языка. /Zc:forScope
включен по умолчанию.
Удаление неуправляемого кода и данных
При указании компилятор больше не создает сведения о символах для неуправляемого кода и данных.
принудительное применение правил преобразования типов
Используется для идентификации ссылочного типа rvalue в результате операции приведения в соответствии со стандартом C++11.
Включить информацию о типах времени выполнения
Добавляет код для проверки типов объектов C++ во время выполнения (сведения о типе среды выполнения или RTTI). Наборы /GR
, /GR-
.
Поддержка open MP
Включает расширения языка OpenMP 2.0. Наборы /openmp
.
Стандарт языка C++
Определяет стандарт языка C++, который включает компилятор. Значение по умолчанию не задает стандартный параметр, поэтому компилятор использует значение по умолчанию C++14. Если выбрать определенное значение, соответствующий /std
параметр компилятора set.md).
Варианты выбора
- По умолчанию (стандарт ISO C++14)
- СТАНДАРТ ISO C++14 (/std:c++14)
- СТАНДАРТ ISO C++17 (/std:c++17)
- ISO C++20 Standard (/std:c++20)
- Предварительная версия — компоненты из последнего рабочего черновика C++ (/std:c++latest)
Стандарт языка C
Определяет стандарт языка C, который включает компилятор. Значение по умолчанию не задает стандартный параметр, поэтому компилятор использует устаревший параметр MSVC по умолчанию. Если выбрать определенное значение, соответствующий /std
параметр компилятора set.md).
Варианты выбора
- По умолчанию (устаревшая ВЕРСИЯ MSVC)
- Стандарт ISO C11 (/std:c11)
- Стандарт ISO C17 (2018) (/std:c17)
Режим соответствия
Включает или подавляет режим соответствия. Наборы /permissive-
.
Включение модулей стандартной библиотеки C++
Экспериментальная поддержка модулей C++ TS и стандартных библиотек.
Создание модулей стандартной библиотеки ISO C++23
Начиная с Visual Studio 17.6, если это свойство включено, а для стандартного языка C++ задано /std:c++latest
значение , проекты Visual C++ автоматически находят и создают модули стандартной библиотеки ISO C++23. Это позволяет import std
вам или import std.compat
в коде C++.
Свойства предварительно скомпилированных заголовков C/C++
Создание и использование предварительно скомпилированного заголовка
Разрешает создание или использование предварительно скомпилированного заголовка во время сборки. Наборы /Yc
, /Yu
.
Варианты выбора
- Create — указывает компилятору создать предварительно скомпилированный файл заголовка (
.pch
) с состоянием компиляции в определенной точке. - Использование — указывает компилятору использовать существующий предварительно скомпилированный файл заголовка (
.pch
) в текущей компиляции. - Не используется предварительно скомпилированные заголовки . Не используется предварительно скомпилированные заголовки.
Файл предкомпилированных заголовков
Указывает имя файла заголовка, используемое при создании или использовании предварительно скомпилированного файла заголовка. Наборы /Yc
, /Yu
.
Готовый выходной файл заголовка
Указывает путь или имя созданного предварительно скомпилированного файла заголовка. Наборы /Fp
.
Свойства выходных файлов C/C++
Развернуть источник атрибутов
Создайте файл описания с расширенными атрибутами, внедренными в исходный файл. Наборы /Fx
.
Файл ассемблерного кода
Задает содержимое выходного файла языка сборки. Наборы/FA
, , /FAs
/FAc
, /FAcs
.
Варианты выбора
- Нет перечисления . Нет перечисления.
- Список только для сборки — код сборки;
.asm
- Сборка с машинным кодом — машинный код и код сборки;
.cod
- Сборка с исходным кодом — исходный код и код сборки;
.asm
- Сборка, машинный код и источник — сборка, код компьютера и исходный код;
.cod
Использование Юникода для перечисления сборщика
Вызывает создание выходного файла в формате UTF-8.
Расположение списка ASM
Указывает относительный путь или имя файла перечисления ASM; может быть именем файла или каталога. Наборы /Fa
.
Имя объектного файла
Задает имя, переопределяющее имя объектного файла по умолчанию; может быть именем файла или каталога. Наборы /Fo
.
Имя файла базы данных программы
Задает имя файла PDB, созданного компилятором; также указывает базовое имя для требуемого файла IDB, созданного компилятором; может быть именем файла или каталога. Наборы /Fd
.
Создание XML-файлов документации
Указывает, что компилятор должен создавать xml-файлы комментариев документации (). XDC). Наборы /doc
.
Имя файла XML-документации
Указывает имя созданных XML-файлов документации; может быть именем файла или каталога. Задает /doc:
<имя>.
Свойства сведений на C/C++
Включение сведений о обзоре
Указывает уровень сведений о просмотре в .bsc
файле. Наборы /FR
.
Просмотр файла сведений
Указывает необязательное имя файла сведений браузера. Задает /FR
<имя>.
Внешние включаемые
Обрабатывать файлы, включенные в угловые скобки, как внешние
Указывает, следует ли обрабатывать файлы, включенные в угловые скобки как внешние. Задайте для этого свойства значение "Да" , чтобы задать параметр компилятора /external:anglebrackets
.
Уровень предупреждения внешнего заголовка
Выберите, насколько строго компилятор должен быть о ошибках кода во внешних заголовках. Это свойство задает параметр компилятора /external:Wn
. Если для этого значения задано значение "Наследовать уровень предупреждения проекта" или значение по умолчанию, другие /external
параметры игнорируются.
Диагностика шаблонов во внешних заголовках
Указывает, следует ли оценивать уровень предупреждений в цепочке экземпляров шаблона. Задайте для этого свойства значение "Да" , чтобы задать параметр компилятора /external:templates-
.
Отключение анализа кода для внешних заголовков
Отключает анализ кода для внешних заголовков. Задает параметр компилятора /analyze:external-
.
Набор правил анализа для внешних заголовков
Задает переопределение набора правил анализа кода для внешних заголовков. Если это не указано, используется параметр анализа кода. Задает параметр компилятора /analyze:external:ruleset path
.
Дополнительные свойства C/C++
Соглашение о вызовах
Выберите соглашение о вызовах по умолчанию для приложения (можно переопределить функцией). Наборы/Gd
, , /Gz
/Gr
, /Gv
.
Варианты выбора
__cdecl
— задает соглашение о вызове__cdecl
для всех функций, кроме функций-членов И функций C++, помеченных__stdcall
или__fastcall
.__fastcall
— задает соглашение о вызове__fastcall
для всех функций, кроме функций-членов И функций C++, помеченных__cdecl
или__stdcall
. Все функции__fastcall
должны иметь прототипы.__stdcall
— задает соглашение о вызове__stdcall
для всех функций, кроме функций-членов И функций C++, помеченных__cdecl
или__fastcall
. Все функции__stdcall
должны иметь прототипы.__vectorcall
— указывает соглашение о вызове__vectorcall
для всех функций, кроме функций-членов И функций C++, помеченных__cdecl
,__fastcall
или__stdcall
. Все функции__vectorcall
должны иметь прототипы.
Компилировать как
Выберите параметр языка компиляции для исходных файлов. Задает/TC
, /TP
/interface, /internalPartition
или /exportHeader
параметры.
Варианты выбора
- По умолчанию — по умолчанию.
- Компиляция как код C (
/TC
) — компиляция указанных исходных файлов в виде кода C. По умолчанию файлы с расширением.c
компилируются как C. - Компиляция как код C++ (
/TP
) — компиляция указанных исходных файлов в виде кода C++. По умолчанию все исходные файлы, у которых нет.c
расширения ,.ixx
.cppm
.h
или нет расширения, компилируются как C++. - Компилируйте как код модуля C++ (
/interface
) — компилируйте указанные исходные файлы в виде кода модуля C++. По умолчанию файлы с расширением.ixx
.cppm
компилируются как код модуля C++. - Компилируйте как внутреннюю секцию модуля C++ (
/internalPartition
) — компилируйте указанные исходные файлы как внутренний раздел модуля C++. - Компиляция как единица заголовка C++ (
/exportHeader
) — компиляция указанных исходных файлов в виде единицы заголовка C++. По умолчанию файлы с расширением.h
или без расширения компилируются как единицы заголовков.
Отключение определенных предупреждений
Отключите указанные номера предупреждений. Поместите числа предупреждений в список с разделителями с запятой. Задает /wd
<число>.
Принудительное включение файла
Один или несколько принудительно включаемых файлов. Задает /FI
<имя>.
Принудительный #using файл
Указывает один или несколько принудительных #using файлов. Задает /FU
<имя>.
Показывать включаемые файлы
Создает список включаемых файлов с выводом компилятора. Наборы /showIncludes
.
Использование полных путей
Используйте полные пути в диагностических сообщениях. Наборы /FC
.
Опущено имя библиотеки по умолчанию
Не включает имена библиотек по умолчанию в .obj
файлы. Наборы /Zl
.
Отчеты о внутренних ошибках компилятора
Примечание.
Этот параметр является устаревшим. Начиная с Windows Vista отчеты об ошибках управляются параметрами отчеты об ошибках Windows (WER).
Обработку определенных предупреждений как ошибок
Обрабатывает конкретное предупреждение компилятора как ошибку, в которой n является предупреждением компилятора.
Дополнительные параметры
Дополнительные параметры