如何在 Visual Studio 中查看调用函数中的变量?

发布于 2024-08-27 10:16:39 字数 283 浏览 7 评论 0原文

有谁知道如何在调用函数中观察变量。 例如: C#:

void fn a()
{
int myVar=9;
b();
}

b()
{
Throw new Exception();
}

当函数 b 中出现异常时,如何查看 myVar? 我有一个非常大的递归函数,在一个循环中,并在一次迭代中得到一个异常。我不知道它属于哪个迭代$%^&*(。我所做的是将我感兴趣的变量提升为全局变量,这样我就可以在任何地方观看它们。但是,我不认为这只是一个好主意调试。

谢谢大家!

Does anyone know how to watch a variable in calling function.
For example: C#:

void fn a()
{
int myVar=9;
b();
}

b()
{
Throw new Exception();
}

How can I watch myVar when I get the exception in function b??
I have a really big recursive function with in a loop and get an exception in one iteration. I don't know which iteration it belongs to$%^&*(. The thing I did was to promote my intersted variable to global so I can watch them anywhere. However, I don't think that's a good idea only for debug.

Thanks everyone!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

欢你一世 2024-09-03 10:16:40

您需要使用调用堆栈窗口

只需选择上一级的堆栈级别,变量现在应该位于您的 本地窗口

另外在第一次机会异常时停止 也可能有帮助。

You need to use the Call Stack Window.

Simply choose the stack level the next level up, and the variable should now be in your Locals Window.

Also Stopping on First Chance Exceptions may also help.

请恋爱 2024-09-03 10:16:40

您可以使用堆栈资源管理器移动到堆栈帧(在调试和暂停时)并观察值。堆栈资源管理器显示当前调用(您已暂停的调用)之前的所有调用,如果双击其中一个调用,它将跳转到“在其下方”调用方法的位置(实际上在资源管理器中位于其上方) .)

某些调用(例如某些框架代码和本机调用)不会显示在资源管理器中,但无论如何它们通常很少有人感兴趣。

编辑:显然它被称为“调用堆栈窗口”,每天都使用它,但不知道它叫什么 - 哈哈。

You can use the the Stack Explorer to move to the stack frame (when in Debug and paused) and watch the values. The Stack Explorer displays all the calls leading up to the current one (the one you have paused in), and if you double click one it will jump to the location where it calls the method "underneath it" (actually above it in the explorer.)

Some calls, like some framework code and native calls will not be shown in the explorer, but they are usually of rare interest anyhow.

Edit: Apparently it's called Call Stack Window, use it every day and don't know what it is called - lol.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文