Delineare la soluzione per la sfida relativa al debugger di codice
L'esempio seguente di un processo di debug è una possibile soluzione per la sfida dell'unità precedente.
Implementare gli strumenti del debugger C# per identificare il problema
Il processo di debug seguente implementa un punto di interruzione e quindi monitora il valore di x nella sezione VARIABLES della visualizzazione RUN AND DEBUG.
Impostare un punto di interruzione nella riga di codice seguente:
int x = 5;Aprire la visualizzazione RUN AND DEBUG.
Nella parte superiore della visualizzazione Esegui e Debug, selezionare Avvia Debugging.
Nella sezione VARIABLES della visualizzazione Esegui e debug prendere nota del valore assegnato a
x.Sulla barra degli strumenti Controlli Debug, selezionare Entra.
Tenere traccia del valore assegnato a
xdurante l'esecuzione di ogni riga di codice.Si noti che il valore di
xnon cambia man mano che l'esecuzione entra ed esce dalChangeValuemetodo .Il
ChangeValuemetodo viene passato al valore dix, anziché a un riferimento ax, pertanto la modifica avalueall'interno del metodo non influisce sulla variabilexoriginale .
Prendere in considerazione un aggiornamento del codice in base ai risultati del debug
Se si vuole che il ChangeValue metodo modifichi il valore nel codice chiamante, è necessario aggiornare il codice. Un modo per ottenere il risultato previsto consiste nell'aggiornare il ChangeValue metodo per restituire un valore intero e aggiornare il codice che chiama ChangeValue in modo che assegni il valore restituito a x.
Per esempio:
int x = 5;
x = ChangeValue(x);
Console.WriteLine(x);
int ChangeValue(int value)
{
value = 10;
return value;
}
Se hai avuto successo in questa sfida, congratulazioni! È possibile continuare al test di conoscenza nell'unità successiva.
Importante
Se si verificano problemi durante il completamento di questa sfida, è consigliabile esaminare le unità precedenti prima di continuare.