Для себя я его давно использую, а на работе удалось продавить его фрагменты в наш внутренний стандарт.
В качестве приятного бонуса Google раздает задорную утилитку cpplint, для быстрой проверки исходника на С++ на соответствие правилам и для генерации отчета, понимаемого средой разработки (например, Visual Studio). Написана она на Питоне, так что для ее использования его надо установить.
Я прикрутил
cpplint
себе в Студию, чтобы можно было проверять исходники прямо в редакторе.cpplint
имеет несколько десятков checker'ов, их можно опционально отключать. Я отключил только три:- Проверку на использование
#include
без указания относительного пути, например
вместо#include "one.h"
. Правило очень разумное, так как исключает перехлест заголовочных файлов с одинаковыми именами в разных подсистемах, но у меня уж больно много, где надо менять.#include "path/to/lib/one.h" - Проверку на формирование имени защитного
#define
'а в начале заголовочного файла. У меня свое правило именования, и оно меня устраивает. - Проверку на неиспользование потоков в STL. Я потоки использую, поэтому отключил.
cpplint.cmd
:C:\Python25\python.exe %~d0%~p0cpplint.py ^
--filter=-build/include,-build/header_guard,-readability/streams ^
--output=vs7 %1 %2 %3 %4 %5 %6 %7 %8 %9
Можно его из командной строки вызывать, но из Студии интереснее.Итак,
Add
и далее как на картинке (пути подправить по вкусу):Теперь, прямо в редакторе жмем ALT-T,C,ENTER и снизу окне результатов получаем отчет. Кликая на его строки можно скакать по исходнику.
Лично я считаю, что порядок в исходниках напрямую связан с порядком в голове его автора.
Спасибо за информативный и занимательный блог. Читаешь и учишься чему-то новому!
ОтветитьУдалитьСпасибо.
ОтветитьУдалитьСпасибо, что напомнили о Lint, теперь бы ещё убедить моё начальство пользоваться им на постоянной основе. Хотя после фразы "предоставьте proof of concept для использования template'ов" руки опускаются.
ОтветитьУдалить