Как использовать встроенный параметр «Фильтр подавления» CPPCHECK для кода C ++?

StackOverflow https://stackoverflow.com/questions/2956331

Вопрос

Я хотел бы использовать CPPCheck для анализа статического кода моего кода C ++. Я узнал, что могу подавить какие -то предупреждения с --inline-suppr командование Тем не менее, я не могу найти то, что «подавленное_еррор_ид» я должен поместить в комментарий:

// cppcheck-suppress "suppressed_error_id"
Это было полезно?

Решение

Согласно помощи CPPCHECK:

Идентификатор ошибки - это идентификатор, который вы хотите подавить. Самый простой способ получить его -использовать флаг командной строки -XML. Скопируйте и вставьте идентификационную строку из вывода XML.

Так что запустите CPPCHECK по какому -либо коду, который содержит ошибку с --xml Флаг, а затем посмотрите в сгенерированном XML -файле, чтобы найти его имя.

Другие советы

Вы можете изменить выходной шаблон, чтобы отобразить идентификатор ошибки из командной строки, которая довольно аккуратно.

Для вывода формата Visual Studio с отображенным идентификатором ошибки добавьте это в свою командную строку:

--template "{file}({line}): {severity} ({id}): {message}"

Это даст вывод чего -то вроде этого:

s:\src\jpeg.cpp(123): error (bufferAccessOutOfBounds): Buffer access out-of-bounds: abRY

Который вы можете затем подавить, добавив линию:

// cppcheck-suppress bufferAccessOutOfBounds

К предыдущей строке в исходном файле.

Согласно Cppcheck Man Page, вы можете использовать --template Опция изменить выход по умолчанию, чтобы включить идентификатор, например,

cppcheck /the/src/file --template='{file}:{line},{severity},{id},{message}'

Если вы используете графический интерфейс, вы можете щелкнуть правой кнопкой мыши на сообщение, которое вы хотите подавить, чтобы выяснить меню. Выберите «Скопировать идентификатор сообщения». Вставьте идентификатор сообщения в свой код вместо «Pustressed_error_id».

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top