При написании программ, очень часто программисты делают ошибки. Большую часть из них отлавливает компилятор, но некоторые, при беглом осмотре, не являются ошибками, но могут привести к непредсказуемым глюкам и багам, на отлов которых можно потратить очень много времени.
Для, поиска подобных проблем были созданы специальные утилиты - статические анализаторы кода.
Сегодня мы рассмотрим установку и использование статического анализатора кода Cppcheck в среде разработки Qt Creator.
Установка
Скачайте дистрибутив с программой с сайта проекта:
https://github.com/danmar/cppcheck/releases/
На момент написания статьи — это версия 2.3
Просто ставим всё по умолчанию.
Запускаем Qt Creator и переходим в меню Справка – О модулях

Пролистываем вниз, пока не найдем пункт Code Analyzer и ставим галочку напротив Cppcheck (экспериментально)

Нажимаем Закрыть и Перезапустить.
После запуска модуль с сppcheck будет активирован
Откройте пункт меню Анализ - Cppcheck

Если в поле «Программа» пусто – укажите C:\Program Files\Cppcheck\cppcheck.exe
Установите все галочки.
Выберите cpp и h файлы в своем проекте

Нажмите Анализировать.
Анализ проекта
Для анализа возьмем один из моих проектов.
Настроим анализатор и выберем все *.h и .cpp файлы.
После нажатия кнопки анализировать, открывается окно со всеми найденными проблемами:

Щелкнув по любой строке, вы можете открыть описание всех проблем в файле и перейти к проблеме.
Запустим сборку.
После окончания сборки в окне редактора появятся новые сообщения.

Заключение
Сегодня мы рассмотрели установку статического анализатора кода Cppcheck и плагина для среды разработки Qt Creator.
Мы скачали и установили саму программу и плагин в среде разработки.
Настроили плагин для проекта и получили предупреждения от Cppcheck.
В следующей статье мы рассмотрим причину появления сообщений вида:
Function parameter 'xxxxxxxx' should be passed by const reference.
И причины, по которым не стоит передавать аргументы в функцию по значению.