Поделиться через


Отладка проекта (C++)

Обновлен: Ноябрь 2007

В этом разделе рассматривается изменение программы для устранения проблемы, выявленной при тестировании проекта.

Обязательные компоненты

Этот раздел предполагает знание основ языка C++. Если вы приступаете к изучению C++, рекомендуем вам "Руководство по С++ для начинающих", написанное Гербом Шилдтом (Herb Schildt), которое доступно по ссылке https://go.microsoft.com/fwlink/?LinkId=115303.

Исправление ошибок в программе

  1. Чтобы увидеть, что происходит при уничтожении объекта Cardgame, рассмотрите деструктор класса Cardgame.

    В меню Вид щелкните пункт Окно классов, либо щелкните вкладку Окно классов в окне Обозреватель решений.

    Разверните дерево проекта game и щелкните класс Cardgame.

    В области ниже отображаются члены и методы класса.

    Щелкните правой кнопкой мыши деструктор ~Cardgame(void) и выберите команду Перейти к определению.

  2. Чтобы уменьшить значение totalparticipants при завершении игры, введите следующий код между открывающей и закрывающей скобками деструктора Cardgame::~Cardgame:

    totalparticipants -= players;
    cout << players << " players have finished their game.  There are now "
    << totalparticipants << " players in total." << endl;
    }
    
  3. После внесения изменений файл Cardgame.cpp должен выглядеть примерно следующим образом:

    #include "Cardgame.h"
    #include <iostream>
    using namespace std;
    Cardgame::Cardgame(int p)
    {
        players = p;
        totalparticipants += p;
        cout << p << " 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;
    }
    
  4. В меню Построение выберите команду Построить решение.

  5. В меню Отладка нажмите кнопку Запуск, или нажмите клавишу F5, чтобы запустить программу в режиме отладки. Программа приостанавливается при достижении первой точки останова.

  6. В меню Отладка нажмите кнопку Шаг с обходом или нажмите клавишу F10 для пошагового выполнения программы.

    Обратите внимание, что при каждом выполнении конструктора Cardgame значение totalparticipants возрастает. После удаления всех указателей (и вызове деструктора) значение totalparticipants уменьшается.

  7. Перейдите в пошаговом режиме к последней строке программы. Непосредственно перед выполнением оператора returntotalparticipants имеет нулевое значение. Продолжайте выполнение программы в пошаговом режиме, пока она не завершится, либо в меню Отладка выберите команду Запуск или нажмите клавишу F5, чтобы продолжить выполнение программы до ее завершения.

Следующие действия

Назад:Тестирование проекта (C++) | Далее:Развертывание программы (C++)

См. также

Задачи

Интерактивный учебник по Visual C++

Другие ресурсы

Построение, отладка и тестирование