Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Указывает, как компилятор создает предупреждения для данной компиляции.
Синтаксис
/w
/W0
/W1
/W2
/W3
/W4
/Wall
/Wv[:version]
/WX
Предупреждение /w1
Предупреждение /w2
Предупреждение /w3
Предупреждение /w4
Предупреждение /wd
/мыпредупреждаем
Предупреждение /wo
Замечания
Параметры предупреждения указывают, какие предупреждения компилятора будут отображаться и поведение предупреждения для всей компиляции.
Параметры предупреждения и связанные аргументы описаны в следующих таблицах:
| Вариант | Описание |
|---|---|
| /w | Подавляет все предупреждения компилятора. |
| /W0 /W1 /W2 /W3 /W4 |
Указывает уровень предупреждений, создаваемых компилятором. Допустимые уровни предупреждений варьируются от 0 до 4: /W0 подавляет все предупреждения. Это эквивалентно /w. /W1 отображает предупреждения уровня 1 (тяжелые). /W1 — это параметр по умолчанию в компиляторе командной строки. /W2 отображает предупреждения уровня 1 и уровня 2 (значимые). /W3 отображает предупреждения уровня 1, уровня 2 и уровня 3 (качество рабочей среды). /W3 — это параметр по умолчанию в интегрированной среде разработки. /W4 отображает предупреждения уровня 1, уровня 2 и уровня 3 и все предупреждения уровня 4 (информационные), которые не отключены по умолчанию. Мы рекомендуем использовать этот параметр для предоставления предупреждений, похожих на lint. Для нового проекта лучше всего использовать /W4 во всех компиляциях. Этот параметр помогает обеспечить наименьшие возможные дефекты кода. |
| /Wall | Отображает все предупреждения, отображаемые /W4 и все остальные предупреждения, которые не включают /W4, например предупреждения, отключенные по умолчанию. Дополнительные сведения см. в разделе "Предупреждения компилятора", отключенные по умолчанию. |
| /Wv[:version] | Отображает только предупреждения, представленные в версии компилятора версий и более ранних версий. Этот параметр можно использовать для подавления новых предупреждений в коде при переходе на более новую версию компилятора. Он позволяет поддерживать существующий процесс сборки при их исправлении. Необязательная версия параметра принимает форму nn[.mm[.bbbbb]], где nn является основным номером версии, мм является необязательным дополнительным номером версии, а bbbbb — необязательный номер сборки компилятора. Например, используйте /Wv:17 для отображения только предупреждений, представленных в Visual Studio 2012 (основная версия 17) или более ранних версий. То есть в нем отображаются предупреждения от любой версии компилятора с основным номером версии 17 или меньше. Он подавляет предупреждения, представленные в Visual Studio 2013 (основная версия 18) и более поздних версий. По умолчанию /Wv использует текущий номер версии компилятора, и предупреждения не подавляются. Сведения о том, какие предупреждения подавляются версией компилятора, см. в предупреждениях компилятора по версии компилятора. |
| /WX | Интерпретирует все предупреждения компилятора как ошибки. Для нового проекта лучше всего использовать /WX во всех компиляциях. Разрешение всех предупреждений обеспечивает наименьшие возможные дефекты кода. Компоновщик также имеет параметр /WX . Дополнительные сведения см. в разделе /WX (обработка предупреждений компоновщика как ошибок). |
Следующие варианты взаимоисключаются друг с другом. Последний параметр, указанный из этой группы, является примененным:
| Вариант | Описание |
|---|---|
| /w1nn /w2nn /w3nnnnnn /w4nn |
Задает уровень предупреждения для номера предупреждения, указанного nnnn. Эти параметры позволяют изменить поведение компилятора для этого предупреждения при установке определенного уровня предупреждений. Эти параметры можно использовать в сочетании с другими параметрами предупреждения для применения собственных стандартов программирования для предупреждений, а не стандартных, предоставляемых Visual Studio. Например, /w34326 приводит к созданию C4326 в виде предупреждения уровня 3 вместо уровня 1. При компиляции с помощью параметра /w34326 и параметра /W2 предупреждение C4326 не создается. |
| /wdnn | Подавляет предупреждение компилятора, указанное nnnn. Например, /wd4326 подавляет предупреждение компилятора C4326. |
| /wennnnnn | Обрабатывает предупреждение компилятора, указанное nnnn как ошибку. Например, /we4326 приводит к тому, что номер предупреждения C4326 обрабатывается компилятором как ошибка. |
| /wonn | Сообщает предупреждение компилятора, указанное nnnn только один раз. Например, /wo4326 вызывает предупреждение C4326 только один раз, при первом обнаружении компилятором. |
Если при создании предварительно скомпилированного заголовка используются какие-либо предупреждения, эти параметры сохраняются. Использование предварительно скомпилированного заголовка снова помещает те же параметры предупреждения. Чтобы переопределить параметры предупреждения предкомпилированного заголовка, задайте другой параметр предупреждения в командной строке.
Вы можете использовать директиву предупреждения #pragma для управления уровнем предупреждения, сообщаемого во время компиляции в определенных исходных файлах.
Директивы pragma предупреждения в исходном коде не влияют на параметр /w .
Документация по ошибкам сборки описывает уровни предупреждений и предупреждений и указывает, почему определенные инструкции могут не компилироваться по мере необходимости.
Настройка параметров компилятора в среде разработки Visual Studio
Откройте диалоговое окно Страницы свойств проекта. Подробнее см. в статье Настройка компилятора C++ и свойства сборки в Visual Studio.
Чтобы задать параметры /W0, /W1, /W2, /W3, /W4, /Wall, /Wv, /WX или /WX, выберите свойства>конфигурации C/C++>General.
Чтобы задать параметры /W0, /W1, /W2, /W3, /W4 или /Wall, измените свойство уровня предупреждения.
Чтобы задать параметры /WX или /WX, измените свойство "Предупреждения как ошибки".
Чтобы задать версию параметра /Wv , введите номер версии компилятора в свойстве Warning Version .
Чтобы задать параметры /wd или /we, выберите страницу свойств>конфигурации C/C++>Advanced.
Чтобы задать параметр /wd , выберите раскрывающийся список свойств "Отключить определенные предупреждения" и нажмите кнопку "Изменить". В диалоговом окне редактирования в диалоговом окне "Отключить определенные предупреждения" введите номер предупреждения. Чтобы ввести несколько предупреждений, разделите значения с запятой (;). Например, чтобы отключить как C4001, так и C4010, введите 4001; 4010. Нажмите кнопку "ОК ", чтобы сохранить изменения и вернуться в диалоговое окно "Страницы свойств".
Чтобы задать параметр /we , выберите раскрывающийся список свойств "Предупреждения от ошибок " и нажмите кнопку "Изменить". В диалоговом окне редактирования в диалоговом окне "Обращение с конкретными предупреждениями в качестве ошибок " введите номер предупреждения. Чтобы ввести несколько предупреждений, разделите значения с запятой (;). Например, чтобы рассматривать как ошибки C4001, так и C4010, введите 4001; 4010. Нажмите кнопку "ОК ", чтобы сохранить изменения и вернуться в диалоговое окно "Страницы свойств".
Чтобы задать параметр /wo, выберите страницу свойств>конфигурации C/C++>Command Line. Введите параметр компилятора в поле "Дополнительные параметры ".
Нажмите ОК, чтобы сохранить внесенные изменения.
Установка параметра компилятора программным способом
- См. разделы WarningLevel, WarnAsError, DisableSpecificWarnings и AdditionalOptions.
См. также
Параметры компилятора MSVC
Синтаксис командной строки компилятора MSVC