Wskazówki: debugowanie projektu (C++)
W tym przewodniku, zmodyfikujemy program, aby naprawić błąd, odkryty podczas testowania projektu.
Wymagania wstępne
Ten poradnik zakłada, że rozumiesz podstawy języka C++.
Zakłada również, że ukończyłeś wcześniej pokrewne instruktaże, które są wymienione w Projektowania aplikacji w języku C++ w środowisku Visual Studio IDE.
Aby naprawić program, który ma błąd
Aby zobaczyć, co ma miejsce podczas niszczenia obiektu Cardgame, należy zobaczyć destruktor klasy Cardgame.
Na pasku menu wybierz Widok, Widok klasy.
W oknie Widok klasy, rozwiń drzewo projektu Game, a następnie wybierz klasę Cardgame aby wyświetlić metody i elementy członkowskie klasy.
Otwórz menu skrótów dla destruktora ~Cardgame(void), a następnie wybierz Przejdź do definicji.
Aby zmniejszyć liczbę totalParticipants podczas niszczenia Cardgame, dodaj następujący kod pomiędzy nawiasy klamrowe destruktora Cardgame::~Cardgame.
totalParticipants -= players; cout << players << " players have finished their game. There are now " << totalParticipants << " players in total." << endl;
Plik Cardgame.cpp powinien po zmianach przypominać:
#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; }
Na pasku menu wybierz Kompilacja, Skompiluj rozwiązanie.
Po zakończeniu kompilacji, uruchom go w trybie debugowania, wybierając Debuguj, Rozpocznij debugowanie na pasku menu lub wciskając klawisz F5.Program zatrzyma się w pierwszym napotkanym punkcie przerwania.
Aby przejść przez program, na pasku menu wybierz Debuguj, Przekrocz, lub wybierz klawisz F10.
Należy zauważyć, że po każdym wykonaniu konstruktora klasy Cardgame, wartość totalParticipants zwiększa się.Gdy funkcja PlayGames, zwraca wartość, i tak samo gdy dowolne wystąpienie Cardgame wykracza poza zakres i jest usuwane (i wywoływany jest destruktor), wartość totalParticipants zmniejsza się.Tuż przed wykonaniem instrukcji return wartość totalParticipants jest równa 0.
Kontynuuj przechodzenie przez program aż do jego zakończenia lub wybierz Debuguj, Uruchom na pasku menu lub wciśnij klawisz F5 aby uruchomić program.
Następne kroki
Wstecz:Wskazówki: testowanie projektu (C++) | Dalej:Wskazówki: wdrażanie Twojego programu (C++)
Zobacz też
Zadania
Przewodnik po programie Visual C++