gpt4 book ai didi

c++ - 如何知道在C++中抛出异常的原因

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:10:15 24 4
gpt4 key购买 nike

我不是使用 Visual Studio 调试 C++ 应用程序的专家,但在 C# 中,通常只要出现异常,应用程序就会在代码中导致异常的确切位置中断。在使用 Visual Studio 2017 的 c++ 中,调试器中断得如此之深,就像中断 system.cpp 文件一样,这完全无法帮助我了解代码中导致此异常的行号是多少。根据下面的异常,我怎么知道我的代码中的行号是什么导致的? enter image description here

[更新]

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

最佳答案

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

Debug-->Windows-->Call Stack

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

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

关于c++ - 如何知道在C++中抛出异常的原因,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42871651/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com