Cenni preliminari sull'esecuzione di codice
Le informazioni contenute in questo argomento sono valide per:
Edizione |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium e Ultimate |
Una delle più comuni procedure di debug consiste nell'esecuzione di una riga di codice alla volta.
Nel menu Debug sono disponibili tre comandi per l'esecuzione del codice istruzione per istruzione:
Esegui istruzione
Esegui istruzione/routine
Esci da istruzione/routine
Esegui istruzione ed Esegui istruzione/routine si differenziano soltanto per un aspetto, ovvero la modalità di gestione delle chiamate di funzione. Entrambi i comandi indicano infatti al debugger di eseguire la riga di codice successiva. Se la riga contiene una chiamata di funzione, scegliendo Esegui istruzione verrà eseguita solo la chiamata, quindi il processo si interromperà alla prima riga di codice all'interno della funzione. Se si sceglie Esegui istruzione/routine, invece, verrà eseguita l'intera funzione, quindi il processo si interromperà alla prima riga di codice all'esterno della funzione. Se si desidera analizzare l'interno della chiamata di funzione, utilizzare Esegui istruzione. Per evitare di eseguire il codice della funzione un'istruzione alla volta, utilizzare Esegui istruzione/routine.
In una chiamata di funzione annidata, scegliendo Esegui istruzione verrà eseguita la funzione annidata più interna. Se si utilizza Esegui istruzione con una chiamata del tipo Func1(Func2()), il debugger eseguirà l'istruzione della funzione Func2.
Se si desidera eseguire una funzione annidata specifica, utilizzare il comando Esegui istruzione specifica dal menu di scelta rapida. Per ulteriori informazioni, vedere Procedura: eseguire istruzioni in una funzione specifica.
Se dall'interno di una chiamata di funzione si desidera ritornare alla funzione chiamante, utilizzare Esci da istruzione/routine. Scegliendo Esci da istruzione/routine, l'esecuzione del codice verrà ripresa fino a quando la funzione restituirà un risultato e verrà interrotta nel punto di restituzione del risultato all'interno della funzione chiamante.