次の方法で共有


チュートリアル: プロジェクトのデバッグ (C++)

この手順では、プロジェクトのテスト時に検出された問題を修正するため、プログラムに変更を加えます。

必須コンポーネント

このトピックは、C++ 言語の基本を理解していることを前提としています。 C++ の学習を始めたばかりのユーザーには、『C++ Beginner's Guide』(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 << players << " 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. プログラムの最後の行へ進みます。 return ステートメントが実行される直前に、totalparticipants は 0 になります。 プログラムが終了するまで段階を経て確認を続けるか、または [デバッグ] メニューの [続行] をクリックするか F5 キーを押し、プログラムを最後まで実行します。

次の手順

前へ : チュートリアル: プロジェクトのテスト (C++) | 次へ : チュートリアル: プログラムの配置 (C++)

参照

処理手順

Visual C++ ガイド ツアー

その他の技術情報

ビルドとデバッグ