如何知道C ++中引发异常的原因

亚瑟·雅鲁夫(Yasser Jarouf)

我不是使用Visual Studio调试c ++应用程序的专家,但通常在c#中,只要有异常,应用程序就会在导致异常的代码中的确切位置处中断。在使用Visual Studio 2017的c ++中,调试器的中断是如此之深,就像中断直到system.cpp文件一样,这完全无法帮助我知道导致此异常的代码中的行号是什么。根据下面的例外,我怎么知道代码中的行号是什么引起的?在此处输入图片说明

[更新]

根据以下剪辑,我设法从调用堆栈中获得所需的内容: 在此处输入图片说明

您可以使用调用堆栈来查看程序在代码中的何处中断。要显示呼叫堆栈窗口,请从菜单中:

Debug-->Windows-->Call Stack

然后双击与您自己的代码中的任何内容相对应的第一行。这是您自己的代码使程序中断的地方。您还可以移至调用堆栈中的任何先前函数,检查变量等。

在发布模式下,C ++异常不会跟踪调用堆栈。您需要设计和实现自己的异常处理机制。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章