Exemplarische Vorgehensweise: Debuggen eines Projekts (C++)
In diesem Schritt bearbeiten Sie das Programm, um das beim Testen des Projekts gefundene Problem zu beheben.
Vorbereitungsmaßnahmen
In diesem Thema wird davon ausgegangen, dass Sie die Grundlagen der Programmiersprache C++ beherrschen. Wenn Sie gerade die ersten Schritte beim Erlernen von C++ machen, empfehlen wir "C++ Beginner's Guide" von Herb Schildt, online verfügbar unter https://go.microsoft.com/fwlink/?LinkId=115303.
So korrigieren Sie ein fehlerhaftes Programm
Um zu sehen, was beim Zerstören eines Cardgame-Objekts geschieht, zeigen Sie den Destruktor der Cardgame-Klasse an.
Klicken Sie im Menü Ansicht auf die Option Klassenansicht, oder klicken Sie auf die Registerkarte Klassenansicht im Fenster Projektmappen-Explorer.
Erweitern Sie die game-Projektstruktur, und klicken Sie auf die Cardgame-Klasse.
Im unteren Bereich werden die Member und die Methoden der Klasse angezeigt.
Klicken Sie mit der rechten Maustaste auf den ~Cardgame(void)-Destruktor, und klicken Sie auf Gehe zu Definition.
Um den Wert von totalparticipants beim Beenden eines Kartenspiels zu verringern, geben Sie zwischen der öffnenden und der schließenden Klammer des Cardgame::~Cardgame-Destruktors folgenden Code ein:
totalparticipants -= players; cout << players << " players have finished their game. There are now " << totalparticipants << " players in total." << endl; }
Nach den Änderungen sieht die Datei Cardgame.cpp ungefähr folgendermaßen aus:
#include "Cardgame.h" #include <iostream> using namespace std; Cardgame::Cardgame(int p) { players = p; totalparticipants += p; cout << players << " 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; }
Klicken Sie im Menü Erstellen auf Projektmappe erstellen.
Klicken Sie im Menü Debuggen auf Debugging starten, oder drücken Sie F5, um das Programm im Debugmodus auszuführen. Die Programmausführung wird beim ersten Haltepunkt unterbrochen.
Klicken Sie im Menü Debuggen auf Prozedurschritt, oder drücken Sie F10, um das Programm schrittweise zu durchlaufen.
Beachten Sie, dass der Wert von totalparticipants nach der Ausführung jedes Cardgame-Konstruktors zunimmt. Nachdem jeder Zeiger gelöscht (und der Destruktor aufgerufen) wurde, nimmt totalparticipants ab.
Gehen Sie zur letzten Zeile des Programms. Direkt vor der Ausführung der return-Anweisung ist totalparticipants gleich 0. Fahren Sie mit dem schrittweisen Durchlaufen des Programms fort, bis es beendet wird, oder klicken Sie im Menü Debuggen auf Weiter, oder drücken Sie F5, um das Programm bis zum Ende auszuführen.
Nächste Schritte
Zurück: Exemplarische Vorgehensweise: Testen eines Projekts (C++) | Weiter: Exemplarische Vorgehensweise: Bereitstellen des Programms (C++)