逐步解說:偵錯專案 (C++)
在這個逐步解說中,您會修改程式以修正在測試專案時所發現的問題。
必要條件
本逐步解說假設您已了解 C++ 語言的基本概念。
也會假設您已完成先前列於使用 Visual Studio IDE 進行 C++ 桌面程式開發中的相關逐步解說。
修正具有 Bug 的程式
若要查看
Cardgame
物件被終結時發生什麼事,請檢視Cardgame
類別的解構函式。在功能表列上選擇 [檢視]>[類別檢視]。
在 [類別檢視] 視窗中,展開 [Game] 專案樹狀結構並選取 [Cardgame] 類別來顯示類別成員和方法。
開啟 ~Cardgame(void) 解構函式的捷徑功能表,然後選擇 [移至定義]。
若要在 Cardgame 結束時減少
totalParticipants
,請在Cardgame::~Cardgame
解構函式的左右大括弧之間新增下列程式碼。totalParticipants -= players; cout << players << " players have finished their game. There are now " << totalParticipants << " players in total." << endl;
在您變更之後,Cardgame.cpp 檔案應類似以下程式碼:
#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; }
在功能表列上選擇 [建置]>[建置解決方案]。
當建置完成時,可以選擇功能表列上的 [偵錯]>[開始偵錯],或是選擇 F5 鍵,以偵錯模式執行程式。 程式會在第一個中斷點上暫停。
若要逐步執行程式,請在功能表列上,選擇 [偵錯]>[不進入函式],或選擇 F10 鍵。
請注意,在每個
Cardgame
建構函式執行後,totalParticipants
的值都會增加。 當PlayGames
函式返回時,因為每個Cardgame
執行個體會超出範圍而被刪除 (和呼叫解構函式),所以totalParticipants
會減少。 就在執行return
陳述式之前,totalParticipants
等於 0。繼續逐步執行程式直到程式結束,或選擇功能表列上的 [偵錯]>[執行],或是選擇 F5 鍵來執行程式。
後續步驟
上一個主題:逐步解說:測試專案 (C++)
下一個主題:逐步解說:部署程式 (C++)