Share via


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

V tomto návodu upravíte program tak, aby se vyřešil problém, který jste zjistili při testování projektu.

Požadavky

Oprava programu s chybou

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

    Na řádku nabídek zvolte Zobrazit>zobrazení třídy.

    V okně Zobrazení třídy rozbalte strom projektu Game a vyberte třídu Cardgame , aby se zobrazily členy třídy a metody.

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

  2. Pokud chcete snížit počet totalParticipants ukončení cardgame, přidejte následující kód mezi levou a pravou závorku Cardgame::~Cardgame destruktoru.

    totalParticipants -= players;
    cout << players << " players have finished their game.  There are now "
         << totalParticipants << " players in total." << endl;
    
  3. Soubor Cardgame.cpp by se měl po změně podobat následujícímu kódu:

    #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. Na řádku nabídek zvolte Build Build Solution (Sestavit>řešení sestavení).

  5. Po dokončení sestavení ho spusťte v režimu ladění tak, že na řádku nabídekzvolíte Spustit ladění> nebo zvolíte klávesu F5. Program se pozastaví na první zarážce.

  6. Pokud chcete program procházet, zvolte na řádku nabídek Ladit>krok přes nebo zvolte klávesu F10 .

    Všimněte si, že po spuštění každého Cardgame konstruktoru totalParticipants se hodnota zvýší. Když se PlayGames funkce vrátí, když každá Cardgame instance překročí rozsah a odstraní se (a volá se destruktor), totalParticipants sníží se. Těsně před provedením return příkazu se totalParticipants rovná 0.

  7. Pokračujte v procházení programu, dokud se program neskončí, nebo ho nechte běžet tak, že na řádku nabídekzvolíte Spustitladění> nebo zvolíte klávesu F5.

Další kroky

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

Viz také

Referenční dokumentace jazyka C++
Projekty a systémy sestavení