Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Поддержка Linux реализована в Visual Studio версии 2017 и выше.
Общие
| Свойство | Описание | Варианты выбора |
|---|---|---|
| Дополнительные каталоги включаемых файлов | Добавляет один или несколько каталогов для добавление к пути включения. Для разделения каталогов используйте точку с запятой. (-I[path]). | |
| Формат отладочной информации | Определяет тип отладочной информации, создаваемой компилятором. |
Нет — отладочная информация не создается для ускорения компиляции. Минимальные сведения об отладке — создание минимальных сведений об отладке. Полная отладочная информация (DWARF2) — создание отладочной информации DWARF2. |
| Имя объектного файла | Определяет имя, переопределяющее имя объектного файла по умолчанию. Это может быть имя файла или каталога. (-o [имя]). | |
| Уровень предупреждений | Выберите, как строго компилятор должен оценивать ошибки в коде. Добавьте другие флаги непосредственно в разделе Дополнительные параметры. (/w, /Weverything). |
Отключить все предупреждения — отключает все предупреждения компилятора. Включить все предупреждения — включает все предупреждения, в том числе предупреждения, отключенные по умолчанию. |
| Обрабатывать предупреждения как ошибки | Интерпретирует все предупреждения компилятора как ошибки. Для нового проекта, вероятно, лучше всего использовать /Werror во всех компиляциях. Обработайте все предупреждения, чтобы устранить сложные в поиске ошибки в коде. | |
| Дополнительные предупреждения C | Определяет набор дополнительных предупреждений. | |
| Дополнительные предупреждения C++ | Определяет набор дополнительных предупреждений. | |
| Включить подробный режим | При включении подробного режима выводится более подробная информация для диагностики сборки. | |
| Компилятор C | Задает программу, вызываемую при компиляции файлов исходного кода C, или путь к компилятору C в удаленной системе. | |
| Компилятор C++ | Задает программу, вызываемую при компиляции файлов исходного кода C++, или путь к компилятору C++ в удаленной системе. | |
| Время ожидания компиляции | Время ожидания удаленной компиляции (в миллисекундах). | |
| Копировать объектные файлы | Указывает, следует ли копировать скомпилированные объектные файлы с удаленной системы на локальный компьютер. | |
| Максимальное количество параллельных заданий компиляции | Количество процессов, создаваемых параллельно во время компиляции. Значение по умолчанию — 1. Если вы используете подсистему Windows для Linux (WSL) версии 1, ограничение составляет 64. | |
| Проверить архитектуру | Указывает на необходимость проверки соответствия платформы, для которой предназначен проект, платформе удаленной системы. | |
| Включить санитайзер адресов | Скомпилируйте программу с помощью санитайзера адресов, который предназначен для обнаружения ошибок в памяти и позволяет находить такие проблемы во время выполнения, как использование после высвобождения, и выполнять проверки вне допустимого диапазона. |
Оптимизация
| Свойство | Описание | Варианты выбора |
|---|---|---|
| Оптимизация | Указывает уровень оптимизации для приложения. |
Настраиваемый — настраиваемая оптимизация. Отключено — отключить оптимизацию. Минимизировать размер — оптимизировать по размеру. Максимизировать скорость — оптимизировать по скорости. Полная оптимизация — дорогостоящие оптимизации. |
| Строгое присвоение псевдонима | Предполагает использование самых строгих правил присвоения псевдонимов. Объект одного типа никогда не будет считаться таким, который находится по тому же адресу, что и объект другого типа. | |
| Развернуть циклы | Развертывает циклы, чтобы приложение работало быстрее благодаря сокращению выполняемых ветвей за счет увеличения размера кода. | |
| Оптимизация времени компоновки | Включает межпроцедурную оптимизацию, разрешая оптимизатору просматривать объектные файлы в приложении. | |
| Опустить указатель на фреймы | Отменяет создание указателей на фреймы в стеке вызовов. | |
| Нет общих блоков | Выделяет неинициализированные глобальные переменные в разделе данных объектного файла, вместо того чтобы создавать их в виде общих блоков |
Препроцессор
| Свойство | Описание |
|---|---|
| Определения препроцессора | Определяет символы предобработки для исходного файла. (-D) |
| Отменить определения препроцессора | Задает одну или несколько отмен определений препроцессора. (-U [макрос]) |
| Отменить все определения препроцессора | Отменяет все объявленные ранее определения препроцессора. (-undef) |
| Показывать включаемые файлы | Создает список включаемых файлов с выводом компилятора. (-H) |
Создание кода
| Свойство | Описание | Варианты выбора |
|---|---|---|
| Позиционно-независимый код | Создает позиционно-независимый код для использования в общей библиотеке. | |
| Статические элементы являются потокобезопасными | Выделяет дополнительный код для использования процедур, указанных в ABI C++, для потокобезопасной инициализации локальных статических элементов. |
Нет — отключение потокобезопасных статических элементов. Да — включение потокобезопасных статических элементов. |
| Оптимизация операций с плавающей запятой | Разрешает оптимизацию операций с плавающей запятой, послабляя требование соответствовать спецификации IEEE-754. | |
| Встроенные методы скрыты | Когда включено, смещенные копии встроенных методов объявляются как private extern. |
|
| Символы скрыты по умолчанию | Все символы объявляются как private extern, кроме явным образом помеченных для экспорта с помощью макроса __attribute. |
|
| Включить исключения C++ | Определяет модель обработки исключений, используемую компилятором. |
Нет — отключение обработки исключений. Да — включение обработки исключений. |
Язык
| Свойство | Описание | Варианты выбора |
|---|---|---|
| Включить информацию о типах времени выполнения | Добавляет код для проверки типов объектов C++ во время выполнения (информация о типах времени выполнения). (frtti, fno-rtti) | |
| Стандарт языка C | Определяет стандарт языка C. |
По умолчанию C89 — стандарт языка C89. C99 — стандарт языка C99. C11 — стандарт языка C11. C99 (диалект GNU) — стандарт языка C99 (диалект GNU). C11 (диалект GNU) — стандарт языка C11 (диалект GNU). |
| Стандарт языка C++ | Определяет стандарт языка C++. |
По умолчанию C++03 — стандарт языка C++03. C++11 — стандарт языка C++11. C++14 — стандарт языка C++14. C++03 (диалект GNU) — стандарт языка C++03 (диалект GNU). C++11 (диалект GNU) — стандарт языка C++11 (диалект GNU). C++14 (диалект GNU) — стандарт языка C++14 (диалект GNU). |
Расширенные
| Свойство | Описание | Варианты выбора |
|---|---|---|
| Компилировать как | Выбирает язык компиляции файлов .c и .cpp. (-x c, -x c++) |
По умолчанию — определение производится по расширениям .c или .cpp. Компилировать как код C — компиляция в качестве кода C. Компилировать как код C++ — компиляция в качестве кода C++. |
| Принудительно включенные файлы | Определяет один или несколько принудительно включенных файлов (-include [name]) |