Para ver el artículo en inglés, active la casilla Inglés. También puede ver el texto en inglés en una ventana emergente si pasa el puntero del mouse por el texto.
Traducción
Inglés
Se recomienda usar Visual Studio 2017

Tutorial: Depurar un proyecto (C++)

En este tutorial, modificará el programa para corregir el problema que detectó al probar el proyecto.

Para corregir un programa que presenta un error

  1. Para ver lo que ocurre cuando se destruye un objeto Cardgame, vea el destructor para la clase Cardgame.

    En la barra de menús, elija Ver, Vista de clases.

    En la ventana Vista de clases, expanda el árbol de proyecto Game y seleccione la clase Cardgame para mostrar los miembros y métodos de la clase.

    Abra el menú contextual del destructor ~Cardgame(void) y después elija Ir a definición.

  2. Para disminuir el valor de totalParticipants cuando finaliza un Cardgame, agregue el código siguiente entre las llaves de apertura y de cierre del destructor Cardgame::~Cardgame.

    totalParticipants -= players;
    cout << players << " players have finished their game.  There are now "
         << totalParticipants << " players in total." << endl;
    
  3. El archivo Cardgame.cpp se debería parecer a este al cambiarlo:

    #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. En la barra de menús, elija Compilar, Compilar solución.

  5. Cuando se complete la compilación, ejecútela en modo de depuración eligiendo Depurar, Iniciar depuración en la barra de menús, o eligiendo la tecla F5. El programa se detiene en el primer punto de interrupción.

  6. Para recorrer paso a paso el programa, en la barra de menús, elija Depurar, Paso a paso por procedimientos, o elija la tecla F10.

    Observe que después de ejecutarse cada constructor de Cardgame, el valor de totalParticipants se incrementa. Cuando la función PlayGames vuelve, a medida que cada instancia de Cardgame sale del ámbito y se elimina (y se llama al destructor), el valor de totalParticipants disminuye. Justo antes de que se ejecute la instrucción return, totalParticipants es igual a 0.

  7. Siga recorriendo el programa hasta que se cierre o déjelo que se ejecute eligiendo Depurar, Ejecutar en la barra de menús, o eligiendo la tecla F5.

Mostrar: