Condividi tramite


Debug di un progetto (C++)

Aggiornamento: novembre 2007

In questo passaggio il programma viene modificato per risolvere il problema rilevato durante il test del progetto.

Prerequisiti

In questo argomento si presuppone la conoscenza delle nozioni di base del linguaggio C++. Chi sta iniziando ad apprendere le prime nozioni di C++ troverà particolarmente utile il testo "C++ Beginner's Guide" scritto da Herb Schildt, disponibile in linea all'indirizzo https://go.microsoft.com/fwlink/?LinkId=115303 (informazioni in lingua inglese).

Per correggere un errore nel programma

  1. Per conoscere le conseguenze della distruzione di un oggetto Cardgame, visualizzare il distruttore per la classe Cardgame.

    Scegliere Visualizzazione classi dal menu Visualizza oppure fare clic sulla scheda Visualizzazione classi nella finestra Esplora soluzioni.

    Aprire la struttura del progetto game e fare clic sulla classe Cardgame.

    Di seguito vengono illustrati i metodi e i membri della classe.

    Fare clic con il pulsante destro del mouse sul distruttore ~Cardgame(void) e scegliere Vai a definizione.

  2. Per diminuire il valore totalparticipants al termine di un gioco di carte, digitare il codice seguente tra le parentesi graffe di apertura e chiusura del distruttore Cardgame::~Cardgame:

    totalparticipants -= players;
    cout << players << " players have finished their game.  There are now "
    << totalparticipants << " players in total." << endl;
    }
    
  3. Dopo le modifiche, il file Cardgame.cpp dovrebbe risultare simile al seguente:

    #include "Cardgame.h"
    #include <iostream>
    using namespace std;
    Cardgame::Cardgame(int p)
    {
        players = p;
        totalparticipants += p;
        cout << p << " players have started a new game.  There are now "
             << totalparticipants << " players in total." << endl;
    }
    
    Cardgame::~Cardgame(void)
    {
        totalparticipants -= players;
        cout << players << " players have finished their game.  There are now "
             << totalparticipants << " players in total." << endl;
    }
    
  4. Scegliere Compila soluzione dal menu Compila.

  5. Scegliere Esegui dal menu Debug oppure premere F5 per eseguire il programma in modalità di debug. Il programma viene sospeso al primo punto di interruzione.

  6. Scegliere Esegui istruzione/routine dal menu Debug oppure premere F10 per eseguire il programma un'istruzione alla volta.

    Si noti che dopo l'esecuzione di ogni costruttore Cardgame, il valore di totalparticipants aumenta. Dopo aver eliminato ciascun puntatore e aver chiamato il distruttore, il valore di totalparticipants diminuisce.

  7. Passare all'ultima riga del programma. Appena prima dell'esecuzione dell'istruzione return, totalparticipants è pari a 0. Continuare a eseguire il programma un'istruzione alla volta fino al termine o scegliere Esegui dal menu Debug. In alternativa, premere F5 per consentire al programma di proseguire l'esecuzione fino al termine.

Passaggi successivi

Precedente:Verifica di un progetto (C++) | Successivo:Distribuzione di un programma (C++)

Vedere anche

Attività

Presentazione guidata di Visual C++

Altre risorse

Generazione, debug e test