Мы используем куки, чтобы пользоваться сайтом было удобно.
Хорошо
to the top
>
>
Возможные проблемы с stdafx.h при испол…

Возможные проблемы с stdafx.h при использовании PVS-Studio

15 Сен 2009

Иногда при проверке кода приложений с помощью PVS-Studio могут возникнуть проблемы с файлом stdafx.h, который представляет собой часть механизма "precompiled headers". Например, PVS-Studio может сообщать, что этот файл не найден. Или при наличии нескольких файлов stdafx.h будет использоваться не тот файл, который должен. При этом компиляция в Visual C++ проходит нормально.

Такая ситуация не является ошибкой с точки зрения PVS-Studio. Дело в том, что stdafx.h обрабатывается Visual C++ специальным образом. И на него иногда распространяются некоторые исключения из правил обработки заголовочных файлов. Проще говоря, Visual C++ обрабатывает файл stdafx.h не так, как все другие заголовочные файлы.

Подобной специальной обработки stdafx.h в анализаторе PVS-Studio (как и во многих других подобных инструментах) нет. Поэтому при проверке кода с помощью PVS-Studio иногда и могут возникать ошибки с stdafx.h.

Для того чтобы ошибок не возникало, нужно чтобы файл stdafx.h обрабатывался также, как и все другие заголовочные файлы. Отключать "precompiled headers" для этого не надо. Однако отключение "precompiled headers" может помочь обнаружить ошибки в организации файлов проекта.

Итак, если при проверке кода с помощью PVS-Studio у вас появляются проблемы с файлом stdafx.h, хотя при компиляции кода этих проблем нет, сделайте следующее.

  • Убедитесь, что весь код корректно компилируется (полностью). Для этого используйте команду "Rebuild Solution".
  • Отключите для проекта "precompiled headers". Если файлы проекта организованы корректно, то проект все равно должен компилироваться. В случае ошибок компиляции без "precompiled headers" исправьте эти ошибки.
  • Включите обратно "precompiled headers".
  • Проект готов к проверке с помощью PVS-Studio.

Следует заметить, что подобные действия нужны только в том случае, если при проверке кода с помощью PVS-Studio возникают ошибки с файлом stdafx.h. Если же файлы проекта организованны корректно, то PVS-Studio прекрасно сможет работать с "precompiled headers".

Популярные статьи по теме


Комментарии (0)

Следующие комментарии next comments
close comment form
close form

Заполните форму в два простых шага ниже:

Ваши контактные данные:

Шаг 1
Поздравляем! У вас есть промокод!

Тип желаемой лицензии:

Шаг 2
Team license
Enterprise license
** Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности
close form
Запросите информацию о ценах
Новая лицензия
Продление лицензии
--Выберите валюту--
USD
EUR
RUB
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Бесплатная лицензия PVS‑Studio для специалистов Microsoft MVP
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Для получения лицензии для вашего открытого
проекта заполните, пожалуйста, эту форму
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
Мне интересно попробовать плагин на:
* Нажимая на кнопку, вы даете согласие на обработку
своих персональных данных. См. Политику конфиденциальности

close form
check circle
Ваше сообщение отправлено.

Мы ответим вам на


Если вы так и не получили ответ, пожалуйста, проверьте, отфильтровано ли письмо в одну из следующих стандартных папок:

  • Промоакции
  • Оповещения
  • Спам