14

C++ ではこれを行うことができましたが、C# で行う方法がわかりません。基本的に、Visual Studio 2008 デバッガーのウォッチ ウィンドウで書式指定子を使用して、スライスまたは配列の一部のみを表示したいと考えています。たとえば、次のような 2D 配列があるとします。

int[,] myArray = new int[5,15]

リストの最後の 15 項目のみを表示したい場合があるため、これをウォッチ ウィンドウ (または類似のもの) に配置できるようにしたいと考えています。

myArray[5],15

Visual Studio にこのようなものはありますか?

4

3 に答える 3

3

Visual Studio 2008デバッガーでサポートされている形式指定子については、ここで説明します。明らかに、C#デバッガーはC++と同じ指定子をサポートしていません。

@Omersの回答に基づいて、次の監視式を使用して、配列の「処理済み」バージョンを監視できます。

System.Linq.Enumerable.Reverse(System.Linq.Enumerable.Take(System.Linq.Enumerable.Reverse(x), 2)), results

注:resultsフォーマット指定子はIEnumerable、結果のみに関心がある場合に結果を監視する場合に役立ちます。

于 2011-07-08T08:11:43.293 に答える
2

これをチェックしてください。この VS プラグインは、デバッグ モードでデータを視覚化する方法の数を増やします。

http://karlshifflett.wordpress.com/mole-2010/

...2008年版もあります

http://karlshifflett.wordpress.com/mole-2010/mole-for-visual-studio/

于 2011-07-07T22:19:15.330 に答える
2

これはあなたの質問に直接答えるものではありませんが、System.Core がロードされていusing System.Linq;てスコープに a がある場合は、評価myArray[5].Reverse().Take(5).Reverse()して最後の 5 つの値を取得できます。

于 2011-07-08T07:40:54.333 に答える