Сложно найти такой инструмент для Java (Checkstyle, JCSC), но я не могу найти его для C/C++. Я не ищу анализатор статического кода, подобный lint, я бы хотел только проверить стандарты кодирования, такие как имена переменных, капитализация, интервал, идентификация, размещение в скобках и т. Д.Бесплатный инструмент для проверки исходного кода на C/C++ на основе набора стандартов кодирования?
Бесплатный инструмент для проверки исходного кода на C/C++ на основе набора стандартов кодирования?
ответ
Единственный инструмент, который я знаю, это Vera. Однако не использовали его, поэтому не могу комментировать, насколько он жизнеспособен. Demo выглядит многообещающим.
Я протестировал его, и это довольно просто. Но это работает! – 2011-05-31 18:47:53
Я пробовал, но был разочарован. Это токенизированный код C++, но для «идентификаторов» он имеет только один тип токена, поэтому он не различает имена классов, переменных-членов и локальных переменных. Поэтому я не смог найти применение различных соглашений об именах для разных типов идентификаторов. – 2011-08-31 06:56:17
Vera не имеет очень полного набора правил, но они могут быть расширенными (в TCL) – fmuecke 2011-10-08 07:00:05
Я использовал инструмент в моей работе его LDRA tool suite
Он используется для тестирования C/C++ кода, но он также может проверить против стандартов кодирования, таких как MISRA и т.д.
Почему это понижается? Даже если LDRA также является статическим анализатором - вопрос не ищет, я считаю, что он также способен проверять код на нарушение стандарта кодирования. – 2010-07-15 21:58:16
Это не бесплатный инструмент. – 2012-05-30 19:30:49
LDRA стоит примерно столько же, сколько ваш средний автомобиль ... не моя идея бесплатно. – Lundin 2015-07-02 14:27:42
Там в list. Существует также предполагаемый C++ frontend on splint.
Не совсем то, о чем вы просите, но мне было легче всего согласиться на стандарт кодирования astyle, который может сгенерировать и затем автоматизировать процесс.
Проверьте universalindentgui
на sourceforge.net.
у него есть много шашек для проверки стиля, и вы можете настроить шашки.
Я уверен, что это могло бы помочь в некоторой степени cxx checker. Также этот инструмент кажется довольно хорошим KWStyle Это из Kitware, ребята, которые разрабатывают Cmake.
В настоящее время я работаю над проектом с другим проектом, чтобы написать именно такой инструмент. Я посмотрел на другие инструменты анализа статического кода и решил, что я могу сделать лучше.
К сожалению, проект еще не готов к использованию без достаточного знания кода (читать: это багги, как и все ад). Тем не менее, мы движемся довольно быстро и надеемся, что в течение следующих 8 недель будет выпущена бета-версия.
Проект с открытым исходным кодом - you can visit the project page, и если вы хотите принять участие, нам бы понравился дополнительный внешний вход.
Я не буду утомлять вас подробностями - для этого вы можете указать visit the project page, но я скажу одно: большинство статических инструментов анализа кода направлены на проверку кода на наличие ошибок и не очень заботятся о проверке правил кодирования , Мы применили более гибкий подход, который позволяет нам писать плагины для проверки как «домашних правил», так и возможных ошибок.
Если вы хотите получить более подробную информацию, пожалуйста, не стесняйтесь обращаться ко мне.
Приветствия,
Google c++lint из Google code style guide.
Существует cppcheck, который также поддерживается Hudson через плагин с таким же именем.
Пробег: nsiqcppstyle. Это Python на основе кода стиль проверки для C/C++. Это легко расширить, чтобы добавить свои собственные правила.
Заканчивать Абраксас код Проверить http://www.abxsoft.com/codchk_user.html
Проверить Metrix ++ http://metrixplusplus.sourceforge.net/. Это может потребовать некоторых расширений, которые являются специфическими для ваших нужд.
Если вы не нашли ответ здесь, рассмотрите этот вопрос: http://stackoverflow.com/q/10819398/120163 – 2012-05-30 19:42:50