1

ここで見たように、このウィンドウの両方を使用してオブジェクトを作成し、独自のコードからメソッドを使用できます。しかし、デバッグ中 (一時停止またはブレークポイントで停止)、次のようにイミディエイト ウィンドウから現在のコンテキストで配列の位置にアクセスできました: このコードの直後にデバッグ セッションを一時停止した場合:

    byte[] R = new byte[100];
    for (int i = 0; i < 100; i++)
    {
        R[i] = (byte)1;
    }

たとえば、イミディエイト ウィンドウから R[37] にアクセスしてその値を確認することはできますが、すべての値が等しいかどうかを確認するためにイミディエイト ウィンドウでループをコーディングすることはできません (単なるばかげた例です)。これはまったくコーディングできません(これは目的ではないため)。

反対側から見ると、C# インタラクティブでコーディングできますが、現在のデバッグ セッション変数とやり取りすることはできません。

残念ながら答えは否定的ですが、VS2012 でこれ (現在のデバッグ セッション変数を含むコード) をアーカイブする方法はありますか?

4

3 に答える 3

2

ご想像のとおり、答えはノーです。インタラクティブ ウィンドウからデバッグ対象の状態を操作する方法はありません。これは、私たちが考え続けているシナリオですが、それまでは、すべての制限があり、対話型ウィンドウで立ち往生しています。

于 2013-07-05T20:36:44.793 に答える
1

式として評価されるため、ループ内で実行できることは何でも linq を使用できます。

例えば

  R.Where(item => item != R[0]);

最初のアイテムと等しくないすべてのアイテムが表示されます。


linq 式で何でもできる理由は次のとおりです。

Enumerable.Range(1,1).Select(one => {

     // any function code you want here
     //return any type of variable.

   });
于 2013-07-04T23:56:57.520 に答える