Exemplarische Vorgehensweise: Debuggen eines Projekts (C++)

In dieser exemplarischen Vorgehensweise bearbeiten Sie das Programm, um das beim Testen des Projekts gefundene Problem zu beheben.

Vorbereitungsmaßnahmen

  • In dieser exemplarischen Vorgehensweise wird davon ausgegangen, dass Sie die Grundlagen der Programmiersprache C++ beherrschen.

  • Es wird ebenfalls davon ausgegangen, dass Sie die früheren exemplarischen Vorgehensweisen dazu abgeschlossen haben, die in Verwenden der Visual Studio-IDE für C++-Desktopentwicklung aufgeführt sind.

So korrigieren Sie ein fehlerhaftes Programm

  1. Um zu sehen, was beim Zerstören eines Cardgame-Objekts geschieht, zeigen Sie den Destruktor der Cardgame-Klasse an.

    Wählen Sie in der Menüleiste Ansicht, Klassenansicht aus.

    Erweitern Sie im Fenster Klassenansicht die Projektstruktur Spiel, und wählen Sie zum Anzeigen der Member und Methoden die Klasse Cardgame aus.

    Öffnen Sie das Kontextmenü für den ~Cardgame (void)-Destruktor und wählen Sie dann Gehe zu Definition aus.

  2. Um den Wert von totalParticipants beim Beenden eines Kartenspiels zu verringern, fügen Sie zwischen der öffnenden und der schließenden Klammer des Cardgame::~Cardgame-Destruktors folgenden Code hinzu:

    totalParticipants -= players;
    cout << players << " players have finished their game.  There are now "
         << totalParticipants << " players in total." << endl;
    
  3. Die Datei "Cardgame.cpp" sieht nach der Änderung ungefähr folgendermaßen aus:

    #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. Wählen Sie in der Menüleiste Erstellen, Projektmappe erstellen.

  5. Führen Sie es nach Abschluss des Buildvorgangs im Debugmodus aus, indem Sie auf der Menüleiste Debuggen, Debugging starten oder die F5-TASTE auswählen.Die Programmausführung wird beim ersten Haltepunkt unterbrochen.

  6. Wählen Sie auf der Menüleiste Debuggen und dann Prozedurschritt aus, oder drücken Sie F10, um das Programm Schritt für Schritt durchzugehen.

    Beachten Sie, dass der Wert von totalParticipants nach der Ausführung jedes Cardgame-Konstruktors zunimmt.Wird die PlayGames-Funktion zurückgegeben, sobald jede Cardgame-Instanz den Gültigkeitsbereichs verlässt und gelöscht wird (und der Destruktor aufgerufen wird), nimmt totalParticipants ab.Direkt vor der Ausführung der return-Anweisung ist totalParticipants gleich 0.

  7. Setzen Sie das schrittweise Durchgehen des Programms fort, bis es beendet wird, oder lassen Sie es ausführen, indem Sie auf der Menüleiste Debuggen, Ausführen oder die F5-TASTE auswählen.

Nächste Schritte

Zurück:Exemplarische Vorgehensweise: Testen eines Projekts (C++) | Weiter:Exemplarische Vorgehensweise: Bereitstellen des Programms (C++)

Siehe auch

Aufgaben

Einführung in Visual C++

Weitere Ressourcen

Building, Debugging, and Testing