Подтвердить что ты не робот

Предупреждение как ошибка - как избавиться от этих

Я не могу понять, как избавиться от ошибок, которые в основном не должны останавливать мою компиляцию в Visual Studio 2010 и не должны быть show stoppers, или, по крайней мере, я исправлю их позже, но я не хочу, чтобы компиляция просто ошиблась и остановилась на таких проблемах.

Например, я получаю следующую ошибку:

Ошибка 1 Предупреждение как ошибка: комментарий XML на 'ScrewTurn.Wiki.SearchEngine.Relevance.Finalize(поплавок)' имеет метку paramref для "IsFinalized", но нет этого параметра C:\WWW\Wiki\Screwturn3_0_2_509\Поисковик\Relevance.cs 60 70 SearchEngine

для этого кода:

  /// <summary>
  /// Normalizes the relevance after finalization.
  /// </summary>
  /// <param name="factor">The normalization factor.</param>
  /// <exception cref="InvalidOperationException">If <paramref name="IsFinalized"/> is <c>false</c> (<see cref="M:Finalize"/> was not called).</exception>
  public void NormalizeAfterFinalization(float factor) {
      if (factor < 0)
          throw new ArgumentOutOfRangeException("factor", "Factor must be greater than or equal to zero");

      if (!isFinalized)
          throw new InvalidOperationException("Normalization can be performed only after finalization");
      value = value * factor;
  }

Я просмотрел меню "Инструменты" → "Параметры", и я не вижу, где я могу настроить компилятор и сообщить ему, чтобы он не беспокоился о комментариях или ошибках на основе XHTML.

4b9b3361

Ответ 1

В каждом проекте в Visual Studio есть опция "предупреждать об ошибках как ошибки". Пройдите через каждый из ваших проектов и измените этот параметр:

  • Щелкните правой кнопкой мыши проект, выберите "Свойства".
  • Нажмите "Создать".
  • Переключатель "Отслеживать предупреждения как ошибки" от "Все" до "Особые предупреждения" или "Нет".

Местоположение этого переключателя зависит от типа проекта (например, библиотеки классов и веб-приложений).

Ответ 2

Для Visual Studio Express 2013, чтобы избавиться от этой проблемы, вы должны сделать следующее.

Щелкните правой кнопкой мыши на своем проекте, щелкнув "Свойства". В окне свойств из меню слева выберите Свойства конфигурации- > C/С++ → Общие

В правой части выберите

Лечить предупреждение как ошибки NO

и

SDL проверяет NO

Ответ 3

Лучший ответ устарел для Visual Studio 2015.

Английский:

Configuration Properties -> C/C++ -> General -> Treat Warning As Errors

Немецкий:

Konfigurationseigenschaften -> C/C++ -> Allgemein -> Warnungen als Fehler behandeln

Или используйте это изображение для справки, чтобы легче было быстро мысленно определить местоположение:

enter image description here

Ответ 4

Обрабатывать все предупреждения компилятора как ошибки компиляции

  1. Выбрав проект в обозревателе решений, в меню "Проект" выберите "Свойства".
  2. Нажмите на вкладку "Компиляция". (или вкладка Build может быть там)
  3. Установите флажок Обрабатывать все предупреждения как ошибки. (или выберите параметр сборки и измените настройки "обрабатывать предупреждения как ошибки" на true).

и если вы хотите избавиться от этого

Чтобы отключить все предупреждения компилятора

  1. Выбрав проект в обозревателе решений, в меню "Проект" выберите "Свойства".
  2. Перейдите на вкладку "Компиляция". (или вкладка Build может быть там)
  3. Установите флажок "Отключить все предупреждения". (или выберите параметр сборки и измените настройки "обрабатывать предупреждения как ошибки" на false.)

Ответ 5

В свойствах

Перейдите в раздел Свойства конфигурации. В этом перейдите на C/С++ (или что-то в этом роде)., Затем нажмите "Общие"., При этом снимите флажок в поле "Предупреждать об ошибке как ошибки"

Ответ 6

Вы можете контролировать поведение в заголовочном файле или C файле:

#pragma warning(error:4003) //not enough actual parameters for macro

Я тестировал его в Visual Studio 2015. У меня есть общий файл заголовка 'compl_adaption.h' для таких вещей, включенный во все файлы, чтобы установить это поведение для всех моих проектов, скомпилированных в Visual Studio.