Analisi della qualità dell'applicazione tramite gli strumenti di analisi del codice
La finestra Analisi codice è disponibile in tutte le edizioni di Visual Studio 2013.
Funzionalità di Analisi codice
Finestra Analisi codice |
Gli avvisi relativi all'analisi del codice sono ora visualizzati nella finestra dello strumento Analisi codice.La finestra aiuta a gestire e risolvere gli avvisi relativi all'analisi del codice. |
Filtro dei messaggi di avviso |
Nella finestra è possibile filtrare i messaggi nella finestra Analisi codice per parola chiave, progetto e gravità. |
Evidenziazione nell'editor di codice |
Selezionando un messaggio nella finestra Analisi codice, viene evidenziata la riga nell'editor del codice sorgente in cui è stato attivato il messaggio. |
Eliminazione dei messaggi di C++ |
Nella finestra Analisi codice è possibile inserire un pragma nel codice sorgente che elimina l'avviso selezionato. |
Set di regole di C++ |
Come nel codice gestito, ora è possibile specificare le regole di analisi che si desidera applicare alle esecuzioni dell'analisi del codice mediante la creazione o l'uso di set di regole. |
Supporto per applicazioni Windows Store
È possibile eseguire l'analisi del codice su codice Visual Basic, C# e C/++ nelle applicazioni di Windows Store.Per altre informazioni, vedere Analizzare la qualità del codice delle applicazioni di Windows Store con l'analisi del codice di Visual Studio in Windows Dev Center.
Nuovi avvisi di concorrenza di C+ +
I nuovi avvisi di concorrenza contribuiscono a garantire le discipline di blocco nei programmi C/C++ con multithreading.L'analizzatore rileva numerosi bug di concorrenza, tra cui potenziali race condition, inversioni dell'ordine di blocco, violazioni del contratto di blocco chiamante/chiamato e operazioni di sincronizzazione non corrispondenti.
Race condition.La variabile <var> deve essere protetta dal blocco <lock>. |
|
Impossibile utilizzare correttamente l'operazione di interlock per la variabile <var>. |
|
Violazione dell'ordine di blocco.L'acquisizione del blocco <lock> con livello <level> determina l'inversione dell'ordine. |
|
Il chiamante non riesce a mantenere il blocco <lock> prima di chiamare la funzione <func>. |
|
Il chiamante non riesce a rilasciare il blocco <lock> prima di chiamare la funzione <func>. |
|
Il chiamante non può utilizzare alcun blocco prima di chiamare <func>. |
|
Il rilascio del blocco <lock> non riesce nella funzione <func>. |
|
L'acquisizione o il mantenimento del blocco <lock> non riesce in <func>. |
|
Rilascio del blocco <lock> non mantenuto nella funzione <func>. |
|
Annotazione _Requires_lock_held_(<lock>) o _No_competing_thread_ mancante nella funzione <func>.In caso contrario, potrebbe trattarsi di una race condition.La variabile <var> deve essere protetta dal blocco <lock>. |
|
Annotazione <annotation> mancante alla funzione <func>. |
|
Errore di annotazione SAL di concorrenza |
|
Il chiamante probabilmente non riesce a mantenere il blocco <lock> prima di chiamare la funzione <func>. |
|
Probabilmente è impossibile rilasciare il blocco |
|
Probabilmente è impossibile acquisire o mantenere il blocco <lock> nella funzione <func>. |
|
Probabile rilascio di un blocco <lock> non mantenuto nella funzione <func>. |
|
Nel modulo dei driver è stato dedotto che il tipo della funzione corrente non è corretto |
|
Dereferenziazione del puntatore NULL |
In questa sezione
Analisi del codice gestito
L'analisi del codice per il codice gestito fornisce informazioni sugli assembly gestiti, ad esempio le violazioni delle regole di programmazione e progettazione definite nelle linee guida di progettazione di Microsoft .NET Framework.I messaggi di avviso identificano eventuali problemi di programmazione e progettazione e, se possibile, forniscono informazioni su come risolverli.
Analisi della qualità del codice gestito tramite analisi del codice
Informazioni su come configurare ed eseguire lo strumento di analisi del codice gestito.Analisi del codice per gli avvisi del codice gestito Descrive gli avvisi segnalati dall'analisi del codice per il codice C/C++.
Analisi del codice C++
Lo strumento di analisi del codice C/C++ fornisce agli sviluppatori informazioni sui possibili errori nel codice sorgente C/C++.Gli errori di codifica più comuni segnalati dallo strumento includono i sovraccarichi del buffer, la memoria non inizializzata, dereferenziazioni al puntatore null e perdite di memoria e risorse.
Verifica della qualità del codice C/C++ tramite analisi del codice
Informazioni su come configurare ed eseguire lo strumento di analisi del codice C/C++.Avvisi dell'analisi codice per il linguaggio C/C++
Descrive gli avvisi segnalati dall'analisi del codice per il codice C/C++.
Code Analysis for Drivers
Gli strumenti di analisi del codice consentono di migliorare la stabilità e l'affidabilità del driver analizzando sistematicamente il codice sorgente del driver.
Analyzing Driver Quality by Using Code Analysis Tools
Code Analysis for Drivers è uno strumento di verifica statica in fase di compilazione che rileva gli errori di codifica di base nei programmi C e C++ e include un modulo specializzato che consente di rilevare errori principalmente nel codice driver in modalità kernel.Static Driver Verifier (SDV) è uno strumento di verifica statica che analizza sistematicamente il codice sorgente dei driver in modalità kernel Windows.SDV stabilisce se il driver interagisce correttamente con il kernel del sistema operativo Windows.Code Analysis for Drivers Warnings
Descrive gli avvisi che Code Analysis for Drivers segnala quando rileva un possibile errore nel codice del driver.
Argomenti aggiuntivi in questa sezione
Altre informazioni sull'analisi del codice
Miglioramento della qualità del codice con i criteri di archiviazione del progetto team