Instruções passo a passo: depurando um projeto (C++)
Neste passo a passo, você modificará o programa para corrigir o problema encontrado durante o teste do projeto.
Pré-requisitos
Este passo a passo pressupõe que você conheça os princípios básicos da linguagem C++.
Também pressupõe que você tenha concluído os passos a passos relacionados anteriores listados em Usando o IDE do Visual Studio para Desenvolvimento para Desktop com C++.
Para corrigir um programa com um bug
Para ver o que ocorre quando um objeto
Cardgame
é destruído, exiba o destruidor da classeCardgame
.Na barra de menus, escolha Exibir>Modo de Exibição de Classe.
Na janela Modo de Exibição de Classe, expanda a árvore do projeto Game e selecione a classe Cardgame para exibir os métodos e os membros da classe.
Abra o menu de atalho do destruidor ~Cardgame(void) e, em seguida, escolha Ir para definição.
Para diminuir o
totalParticipants
quando um Cardgame é encerrado, adicione o código a seguir entre as chaves de abertura e fechamento do destruidorCardgame::~Cardgame
.totalParticipants -= players; cout << players << " players have finished their game. There are now " << totalParticipants << " players in total." << endl;
O arquivo Cardgame.cpp deve ter a aparência do código abaixo depois de alterado:
#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 barra de menus, escolha Compilar>Compilar Solução.
Quando o build for concluído, execute-o no modo de Depuração escolhendo Depurar>Iniciar depuração na barra de menus ou escolhendo a tecla F5. O programa pausa no primeiro ponto de interrupção.
Para executar programa em etapas, na barra de menus, escolha Depurar>Depuração Parcial ou escolha a tecla F10.
Observe que, após a execução de cada construtor
Cardgame
, o valor detotalParticipants
aumenta. Quando a funçãoPlayGames
é retornada, à medida que cada instânciaCardgame
sai do escopo e é excluída (e o destruidor é chamado),totalParticipants
diminui. Logo antes da execução da instruçãoreturn
,totalParticipants
é igual a 0.Continue executando o programa em etapas até que ele seja encerrado ou deixe-o em execução escolhendo Depurar>Executar na barra de menus ou escolhendo a tecla F5.
Próximas etapas
Anterior: Passo a passo: Testando um Projeto (C++)
Próximo: Passo a passo: implantando seu programa (C++)