Sdílet prostřednictvím


Návod: Ladění projektu (C++)

V tomto návodu změníte program pro vyřešení problému, který jste zjistili při testování projektu.

Požadavky

Oprava programu, který obsahuje chybu

  1. Chcete-li zjistit co se stane, když je objekt Cardgame zničen, zobrazte destruktor třídy Cardgame.

    V řádku nabídek zvolte Zobrazení a poté Zobrazení tříd.

    V okně Zobrazení tříd rozbalte strom projektu Game a vyberte třídu Cardgame, abyste zobrazili členy a metody této třídy.

    Otevřete místní nabídku destruktoru ~Cardgame(void) a poté zvolte Přejít k definici.

  2. Pro snížení proměnné totalParticipants při ukončení aplikace Cardgame, přidejte následující kód mezi otevírací a uzavírací závorky destruktoru Cardgame::~Cardgame:

    totalParticipants -= players;
    cout << players << " players have finished their game.  There are now "
         << totalParticipants << " players in total." << endl;
    
  3. Soubor Cardgame.CPP by měl vypadat takto:

    #include "Cardgame.h"
    #include <iostream>
    
    using namespace std;
    
    int Cardgame::totalParticipants = 0;
    
    Cardgame::Cardgame(int players)
        : players(players)
    {
        totalParticipants += players;
        cout << players << " players have started a new game.  There are now "
             << totalParticipants << " players in total." << endl;
    }
    
    Cardgame::~Cardgame()
    {
        totalParticipants -= players;
        cout << players << " players have finished their game.  There are now "
             << totalParticipants << " players in total." << endl;
    }
    
  4. V panelu nabídek zvolte Sestavit a poté Sestavit řešení.

  5. Po dokončení sestavení aplikaci spusťte v režimu ladění vybráním Ladit a poté Spustit ladění na panelu nabídek nebo pomocí klávesy F5.Program se pozastaví u první zarážky.

  6. Chcete-li krokovat programem, v řádku nabídek zvolte Ladit a poté Krokovat s přeskočením nebo stiskněte klávesu F10.

    Všimněte si, že po každém provedení konstruktoru třídy Cardgame se hodnota proměnné totalParticipants zvýší.Když se funkce PlayGames dokončí, jak se každá instance třídy Cardgame dostane mimo rozsah a je odstraněna (a je zavolán destruktor), proměnná totalParticipants se sníží.Těsně před tím, než je proveden příkaz return, je hodnota totalParticipants rovná 0.

  7. Pokračujte v krokování programu dokud se neukončí nebo jej spusťte vybráním Ladit a poté Spustit na panelu nabídek nebo pomocí klávesy F5.

Další kroky

Předchozí:Návod: Testování projektu (C++) | Další:Návod: Nasazení programu (C++)

Viz také

Úkoly

Průvodce Visual C++

Další zdroje

Building, Debugging, and Testing