Debug del codice nativo
In questa sezione vengono discussi alcuni problemi di debug comuni, nonché varie tecniche per le applicazioni native. Le tecniche illustrate in questa sezione sono di alto livello. Per i meccanismi dell'uso del debugger di Visual Studio, vedere Prima di tutto esaminare il debugger.
In questa sezione
Procedura: Eseguire il debug di codice ottimizzato fornisce suggerimenti per il debug di codice ottimizzato, in particolare, perché è consigliabile eseguire il debug di una versione non ottimizzata del programma, le impostazioni di ottimizzazione predefinite per le configurazioni di debug e rilascio e suggerimenti per individuare i bug visualizzati solo nel codice ottimizzato (attivando l'ottimizzazione in una configurazione di compilazione di debug).
DebugBreak e __debugbreak descrive la funzione Win32 DebugBreak
e fornisce un collegamento al relativo argomento di riferimento in Platform SDK. Viene inoltre descritta la funzione intrinseca __debugbreak
.
Le asserzioni C/C++ illustrano le istruzioni di asserzione, il modo in cui funzionano, i vantaggi dell'uso (rilevamento degli errori logici , controllo dei risultati di un'operazione e test delle condizioni di errore), l'interazione con _DEBUG
e i tipi di asserzioni supportate in Visual Studio.
Procedura: Eseguire il debug del codice assembly inline fornisce brevi istruzioni sull'uso della finestra Disassembly per visualizzare le istruzioni di assembly e la finestra Registri per visualizzare il contenuto del registro e fornisce collegamenti ad argomenti relativi a tali finestre.
Le tecniche di debug MFC consentono di collegare le tecniche di debug per i programmi MFC, tra cui afxDebugBreak, la macro TRACE, il rilevamento delle perdite di memoria in MFC, le asserzioni MFC e la riduzione delle dimensioni delle compilazioni di debug MFC.
Tecniche di debug CRT Consente di collegare le tecniche di debug per la libreria di runtime C, tra cui l'uso della libreria di debug CRT, le macro per la creazione di report, le differenze tra malloc e _malloc_dbg, la scrittura di funzioni hook di debug e l'heap di debug CRT.
Le domande frequenti sul debug del codice nativo offrono risposte alle domande frequenti sul debug di programmi C++
Il debug COM e ActiveX forniscono informazioni sul debug di applicazioni COM e ActiveX, inclusi gli strumenti che è possibile usare per il debug COM e ActiveX.
Procedura: Eseguire il debug del codice inserito fornisce indicazioni sul debug del codice che usa attributi. Sono incluse istruzioni per l'attivazione del codice sorgente, la visualizzazione del codice inserito e del codice disassembly in corrispondenza del punto di esecuzione corrente.
Procedura dettagliata: debug di un'applicazione parallela descrive come usare le finestre degli strumenti Parallel Tasks e Parallel Stacks per eseguire il debug di un'applicazione parallela.
Sezioni correlate
Preparare il debug di progetti C++ fornisce collegamenti ad argomenti che descrivono come eseguire il debug dei tipi di progetto nativi creati dai modelli di progetto C++.
Il debug di progetti DLL fornisce informazioni su come eseguire il debug di DLL native e gestite.
Esaminare prima di tutto il debugger i collegamenti alle sezioni più grandi della documentazione di debug. Vengono fornite informazioni sui seguenti argomenti: novità del debugger, impostazione e preparazione, punti di interruzione, gestione delle eccezioni, modifica e continuazione, debug di codice nativo, debug di SQL e riferimenti all'interfaccia utente.