Данная заметка адресована тем, кто занимается написанием статей и книг, посвященных созданию качественного Си/Си++ кода или вопросам безопасности. Изучая различные проекты с помощью статического анализатора PVS-Studio, мы накопили уже достаточно большую базу с примерами ошибок. Я думаю, для ряда писателей эта база будет весьма интересна и полезна.
Ссылка на коллекцию ошибок: http://www.viva64.com/ru/examples/
База выглядит простенько и не содержит украшательств. Зато примеры вырезаны вручную и отредактированы так, чтобы в них легко было разобраться.
Конечно, в базу попадают далеко не все ошибки, которые можно обнаружить в том или ином проекте. Быстро просматривая незнакомый проект сложно определить, есть в коде ошибка или нет. И лучше пропустить то место, где не уверен, что есть ошибка. Тем не менее, примеров накопилось уже очень много и их можно использовать для изучения паттернов ошибок.
Так сложилось, что анализатор PVS-Studio хорошо выявляет различные опечатки или ошибки связанные с Copy-Paste. Чтобы понять, о чем речь, предлагаю взглянуть на эти примеры ошибок, которые выявляются с помощью диагностики V501. Естественно, есть и другие диагностики, выявляющие подобные ошибки. Это я пишу для того, чтобы продемонстрировать, как можно использовать коллекцию. Изучая опечатки и Copy-Paste ошибки, можно вырабатывать новый стиль оформления кода, давать полезные советы, улучшать стандарты кодирования и так далее. В общем, надеюсь, что коллекция окажется полезной при подготовке статей и книг.