Анализ качества приложений с помощью средств анализа кода
Новые возможности Visual Studio 2012
Окно анализа кода |
Предупреждения анализа кода теперь отображаются в окне инструмента анализа кода.Окно служит для управления и устранения предупреждений анализа кода. |
Фильтр предупреждающих сообщений |
В окне сообщения в окне Анализ кода можно фильтровать по ключевому слову, проекту и серьезности. |
Выделение редактора кода |
Выбор сообщение в ходе анализа кода окна выделяет линию в редакторе исходного кода, в которой сообщение было активировано. |
Подавление сообщения C++ |
В окне Анализ кода можно вставить pragma в исходный код, подавляющий выбранным предупреждение. |
Наборы правил C++ |
Как и в управляемом коде, теперь можно определить правила анализа, которые нужно применить к запуску анализа кода путем создания или использования наборов правил. |
Поддержка приложений Windows Магазина
Можно выполнить анализ кода в коде Visual Basic, C-# и C/++ Магазина в приложениях Windows.Дополнительные сведения см. в Анализ качество кода приложений Windows Магазина с анализом кода Visual Studio Центр разработки для Windows.
Новые предупреждения параллелизма для C++
Новые предупреждения параллелизма позволяют гарантировать дисциплины блокировки в многопоточных программах C/C++.Анализатор обнаруживает число ошибок параллельной обработки, включая потенциальные гонки, инверсии порядка блокировки, блокировки нарушения контракта вызывающего/вызываемого и несоответствующие синхронизации операций.
Состояние гонкиПеременная <var> должна быть защищена блокировкой <lock>. |
|
Неправильное использование операции блокировки для переменной <var>. |
|
Нарушение порядка блокировки.Получение блокировки <lock> с уровнем <level> вызывает изменение порядка. |
|
Вызывающая сторона не может удержать блокировку <lock> до вызова функции <func>. |
|
Вызывающая сторона не может освободить блокировку <lock> до вызова функции <func>. |
|
Вызывающая сторона не может содержать любые блокировки до вызова <func>. |
|
Сбой при освобождении блокировки <lock> в функции <func>. |
|
Сбой при получении или удержании блокировки <lock> в <func>. |
|
Освобождение неудерживаемой блокировки <lock> в функции <func>. |
|
Отсутствует примечание _Requires_lock_held_ (<lock>) или _No_competing_thread_ на функции <func>.В противном случае возможно состояние гонки.Переменная <var> должна быть защищена блокировкой <lock>. |
|
Отсутствует примечание <annotation> на функции <func>. |
|
Ошибка примечания Concurrency SAL |
|
Вызывающая сторона не смогла удержать блокировку <lock> до вызова функции <func>. |
|
Отсутствие возможности освободить блокировку |
|
Отсутствие возможности для получения или удержания блокировки <lock>в функции <func>. |
|
Возможность освобождения неудержанной блокировки <lock> в функции <func>. |
|
Модуль драйверов определил, что текущая функция не относится к правильному типу функции |
|
Разыменование пустого (NULL) указателя. |
Содержание
анализа управляемого кода
Анализа управляемого кода предоставляет информацию об управляемых сборках и позволяет получить такие сведения о сборках, как нарушения правил программирования и разработки, изложенных в руководствах по разработке Microsoft .NET Framework.В предупреждающих сообщениях указываются все проблемы, связанные с программированием и разработкой, и, по возможности, сведения о методах их устранения.
Анализ качества управляемого кода с помощью метода анализа кода
Узнайте, как настроить и запустить средство анализа управляемого кода.Анализ для предупреждений управляемого кода
Описание предупреждений, которые анализ кода выдает для кода C/C++.
Анализ кода С++
Средство анализа кода C/C++ предоставляет разработчикам сведения о возможных дефектах в исходном коде C/C++.К наиболее распространенным ошибкам кодирования, которые обнаруживает данное средство, относятся переполнение буфера, неинициализированная память, разыменования пустых указателей, а также утечки памяти и ресурсов.
Анализ качества кода C/C++ с помощью метода анализа кода
Узнайте, как настроить и запустить средство анализа кода C/C++.Анализ кода для предупреждений C/C++
Описание предупреждений, которые анализ кода выдает для кода C/C++.
Анализ кода для драйверов
Средства анализа кода можно повысить стабильность и надежность драйвера путем систематического анализа исходного кода драйвера.
Analyzing Driver Quality by Using Code Analysis Tools
Анализ кода для драйверов — это средство статической проверки во время компиляции, которое определяет основные ошибки в программах на С и C++ и включает специализированный модуль, предназначенный для обнаружения ошибок в коде (основном) в режиме ядра драйвера...Статическое средство проверки драйвера (SDV) — это статическое средство проверки, систематически анализирующее код источника работы в режиме ядра Windows драйверов.Определяет, правильно ли драйвер SDV взаимодействует с ядром операционной системы Windows.Code Analysis for Drivers Warnings
Описание предупреждений, о которых сообщает анализатор кода для драйверов при обнаружении возможных ошибок в коде драйвера.
Дополнительные статьи в этом разделе
Дополнительные сведения об анализаторе кода
- Улучшение качества кода с помощью политик возврата командного проекта
Вставьте здесь описание.
Связанные задачи
Оценка сложности и удобства сопровождения управляемого кода
Вставьте здесь описание.Проверка кода при помощи модульных тестов
Вставьте здесь описание.