Visual Studio デバッガーには、アプリのデバッグに役立つ強力な機能が多数用意されています。 この記事では、基本的な機能の一部について簡単に説明します。
新しいプロジェクトを作成する
Visual Studio を開き、新しいプロジェクトを作成します。
スタート ウィンドウが開いていない場合は、[ファイル]
[スタート ウィンドウ] 選択します。 スタート ウィンドウで、[新しいプロジェクト 作成] を選択します。 [ 新しいプロジェクトの作成 ] ウィンドウで、検索ボックスに コンソール と入力します。 次に、[言語] の一覧から [C# ] を選択し、[プラットフォーム] の一覧から [Windows ] を選択します。
言語フィルターとプラットフォーム フィルターを適用したら、.NET Core 用の コンソール アプリ テンプレートを選択し、[ 次へ] を選択します。
推奨されるターゲット フレームワークまたは .NET 10 を選択し、[ 作成] を選択します。
.NET Core の コンソール アプリ プロジェクト テンプレートが表示されない場合は、 ツール>Get Tools and Features...に移動し、Visual Studio インストーラーを開きます。 .NET Core クロスプラットフォーム開発ワークロードを選択し、[変更] を選択します。
Visual Studio によってプロジェクトが作成されます。
Program.csまたはModule1.vbで、次のコードを置き換えます。
次のコードを使用します。
class Program { private static void doWork() { LinkedList<int> c1 = new LinkedList<int>(); c1.AddLast(10); c1.AddLast(20); LinkedList<int> c2 = new LinkedList<int>(c1); int i = c2.First.Value; int j = c2.First.Value; Console.Write("The first element is "); Console.Write(i); Console.Write("\n"); Console.Write("The second element is "); Console.Write(j); Console.Write("\n"); } static int Main() { // using namespace std; doWork(); return 0; } }注
Visual Basic で、スタートアップ オブジェクトが
Sub Mainに設定されていることを確認します (アプリケーション > スタートアップ オブジェクト>プロパティ)。
ブレークポイントを設定する
ブレークポイントは、Visual Studio で実行中のコードを中断する場所を示すマーカーであり、変数の値やメモリの動作、またはコードの分岐が実行されているかどうかを確認できます。 これは、デバッグの最も基本的な機能です。
ブレークポイントを設定するには、
doWork関数呼び出しの左側にある余白をクリックします (または、コード行を選択して F9 キーを押します)。
F5 キーを押します (または、[デバッグ] > [デバッグの開始] を選択します)。
ブレークポイントを設定した場所でデバッガーが一時停止します。 黄色の矢印は、デバッガーとアプリの実行が一時停止されているステートメントを識別します。
doWork関数呼び出しを含む行はまだ実行されていません。ヒント
ループまたは再帰にブレークポイントがある場合、または頻繁にステップ実行するブレークポイントが多数ある場合は、 条件付きブレークポイント を使用して、特定の条件が満たされた場合にのみコードが中断されるようにします。 条件付きブレークポイントを使用すると、時間を節約でき、再現が困難な問題を簡単にデバッグすることもできます。
コードをナビゲートする
デバッガーに続行するように指示するさまざまなコマンドがあります。 Visual Studio 2017 以降で使用できる便利なコード ナビゲーション コマンドを示します。
コードがブレークポイントで一時停止している間、ステートメントc1.AddLast(20)の上にマウス ポインターを移動させ、緑色の 「実行してクリック」 ボタンが表示されるまで待ちます。その後、
「実行してクリック」 ボタンを押します。
アプリは実行を続行し、 doWorkを呼び出し、ボタンをクリックしたコード行で一時停止します。
コードのステップ 実行に使用される一般的なキーボード コマンドには 、F10 と F11 が含まれます。 詳細な手順については、 デバッガーの最初の確認を参照してください。
データ ヒントで変数を検査する
現在のコード行 (黄色の実行ポインターでマーク) で、マウスで
c1オブジェクトの上にポインターを置くと、データ ヒントが表示されます。
データ ヒントには、
c1変数の現在の値が表示され、そのプロパティを調べることができます。 デバッグ時に予期しない値が表示される場合は、前のコード行または呼び出し元のコード行にバグがある可能性があります。データ ヒントを展開して、
c1オブジェクトの現在のプロパティ値を確認します。コードの実行中に
c1の値を引き続き確認できるようにデータ ヒントをピン留めする場合は、小さなピン アイコンを選択します。 (ピン留めされたデータ ヒントを便利な場所に移動できます)。
コードを編集してデバッグを続行する
デバッグ セッションの途中でコードでテストする変更を特定した場合は、その変更も実行できます。
c2.First.Valueの 2 番目のインスタンスを選択し、c2.First.Valueをc2.Last.Valueに変更します。F10 キー (またはデバッグ > ステップ オーバー) を数回押してデバッガーを進め、編集したコードを実行します。
F10 ではデバッガーをステートメントごとに一歩進めますが、関数に入るのではなく、関数を飛ばして次に進みます (スキップしたコードは引き続き実行されます)。
エディット コンティニュの使用と機能の制限の詳細については、「 エディット コンティニュ」を参照してください。
次のステップ
このチュートリアルでは、デバッガーを起動し、コードをステップ実行し、変数を検査する方法を学習しました。 詳細な情報へのリンクと共に、デバッガーの機能を大まかに見ることができます。