Поделиться через


Общие сведения об анализе кода в C/C++

Средство анализа кода C/C++ предоставляет разработчикам сведения о возможных дефектах в исходном коде C/C++. К наиболее распространенным ошибкам кодирования, которые обнаруживает данное средство, относятся переполнение буфера, неинициализированная память, разыменования пустых указателей, а также утечки памяти и ресурсов.

Интеграция в интегрированную среду разработки

Для более удобного использования разработчиками средство анализа полностью интегрировано в интерфейс IDE Visual Studio. Во время построения все предупреждения, вырабатываемые для исходного кода, отображаются в списке ошибок. При этом можно перейти к исходному коду, вызвавшему предупреждение, и просмотреть дополнительные сведений о причине и возможных способах устранения проблемы.

Поддержка директивы #pragma

Разработчики могут использовать директиву #pragma для обработки предупреждений как ошибок, включения и отключения предупреждений, а также отключения предупреждений для отдельных строк кода. Дополнительные сведения см. в разделе Практическое руководство. Включение и отключение анализа кода для конкретных предупреждений C/C++.

Поддержка заметок

Заметки повышают точность анализа кода. Заметки являются источником дополнительных сведений о пред- и постусловиях параметров функции и возвращаемых типов. Дополнительные сведения см. в разделе Практическое руководство. Добавление дополнительных сведений о коде с помощью __analysis_assume.

Запуск средства анализа в рамках политики возврата

Можно также требовать, чтобы все возвраты исходного кода выполнялись в соответствии с определенными политиками. В частности, можно обеспечить выполнение анализа в процессе самого последнего локального построения. Дополнительные сведения о включении политики возврата для анализа кода см. в разделе Создание и использование политик возврата с анализом кода.

Интеграция командного построения

Существует возможность использования интегрированных функций системы построения для выполнения анализа кода в рамках процесса построения Team Foundation Server. Дополнительные сведения см. в разделе Построение приложения.

Поддержка командной строки

Помимо того, что средство анализа полностью интегрировано в интегрированную среду разработки, разработчики также могут запускать средство анализа из командной строки, как показано в следующем примере:

C:\>cl /analyze Sample.cpp