如何在c ++

时间:2017-03-18 07:18:49

标签: c++ visual-studio debugging exception-handling

我不是那些使用Visual Studio调试c ++应用程序的专家,但是在c#中,通常只要有异常,应用程序就会在代码中导致异常的确切位置中断。 在使用Visual Studio 2017的c ++中,调试器打破了这么深,就像破坏system.cpp文件一样,这完全没有帮助我知道我的代码中的行号导致了这个异常。 根据下面的例外情况,我怎么知道我的代码中的行号是什么造成的呢? enter image description here

[更新]

根据下面的剪辑,我设法从调用堆栈中得到了我想要的东西: enter image description here

1 个答案:

答案 0 :(得分:1)

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

Debug-->Windows-->Call Stack

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

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