Включить анализ Visual Studio C++ Core Проверить только файлы проекта?
Я большой поклонник основных принципов C++, и мне нравится следовать им во всех проектах, над которыми я работаю, поэтому я включил следующий вариант в свой шаблон проекта в Visual Studio 2017
:
Этот инструмент отличный и помогает мне лучше писать код, но я просто не могу понять, как сделать его только анализом моих файлов. Всякий раз, когда у моего проекта есть зависимость, такая как Boost или OpenCV, я получаю оштукатуренную стену предупреждений:
Эти зависимости добавляются через vcpkg, однако то же самое происходит при их добавлении вручную с помощью C/C++ > General > Additional Include Directories
.
Есть ли способ только сделать эти предупреждения применимыми к файлам проекта, а не ко всем включенным файлам?
Ответы
Ответ 1
Как уже упоминалось в комментариях, сразу после следующего раздела в вашем .vcxproj
в конце файла:
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
<ImportGroup Label="ExtensionTargets">
</ImportGroup>
Проблема может быть решена путем добавления следующего после упомянутого выше раздела:
<PropertyGroup Condition="'$(Language)'=='C++'">
<CAExcludePath>$(QTDIR)\include;.\GeneratedFiles;$(CAExcludePath)</CAExcludePath>
</PropertyGroup>
Кроме того, если вы используете vcpkg, что было в моей ситуации, вам нужно добавить следующий элемент в CAExcludePath
:
$(VcpkgRoot)include
Это гарантирует, что все заголовки из любых пакетов не будут проанализированы.