首页 > 解决方案 > 如何在 Visual Studio 2017 调试模式下观看一列二维矩阵?

问题描述

伙计们。

我知道我们可以通过将数组添加到观察窗口中来在 VS 调试模式下观察数组,但是我们如何查看矩阵的列(2D 数组)?假设我们有一个矩阵 A[3][3],我只想在调试模式下查看第三列中的所有元素。我尝试在监视窗口中键入 A[][2] 或 A[:][2] 或 A[,][2] ,但这三个都无法识别。

请帮忙!

谢谢!

标签: debuggingvisual-studio-2017

解决方案


我们目前无法在调试模式下获取列值,至少不能直接获取。

监视窗口旨在在调试模式下监视变量和表达式。它无法识别编译器无法识别的变量。

例如:假设我们有一个矩阵 A[3][3],编译器可以识别A变量,A[2]变量,但不能识别类似的东西A[][2](这是一个无效的变量)。相应地,它不会被监视窗口识别。

如果您有一个大型二维矩阵的场景,并且出于某种原因确实需要列值。您可以创建一个单维数组,迭代您的二维数组并将第三列值放入其中。然后将一维数组变量添加到观察窗口中。

我们确实有很多变通方法可以在调试模式下获取列值,但是在调试模式下直接观察数组的列,恐怕答案是否定的。现在 vs2017 不支持这个选项。

另外:不确定您使用什么语言,但是如果您使用.net(C#,VB),则 A[3][3] 是A jagged array,而不是二维数组


推荐阅读