问题标签 [debugbreak]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
128 浏览

c++ - Debugbreak() 是否在 C++ 中占用内存?

当我想new在 C++ 中创建一个对象时,我需要考虑内存不足时该怎么办,所以我编写了以下代码:

但是不知道DebugBreak内存不足的时候会不会执行这个函数?

0 投票
2 回答
600 浏览

c++ - 如何安装 DebugBreak 处理程序?

我们正在为我们的 Visual Studio 解决方案设置 Appveyor,该解决方案生成一个 C++ 库。我们的一些测试 [愚蠢] 模糊 C++ 对象,以确保它们不会做意外的事情。在调试版本下,它会触发一个断言(在发布版本中它只是抛出)。

我们使用自定义断言来避免正在调试的程序崩溃的 Posix 行为。如下所示。如果断言触发并且未附加调试器,则似乎 Appveyor 或操作系统会终止程序:

在此处输入图像描述

DebugBreak如果调试器不存在,我们想安装一个处理程序。这应该确认它的操作系统正在执行杀戮。理想情况下,处理程序将从 Windows XP 和 VS2002 及更高版本开始工作(这些是我们支持的 Windows 组合)。

我们如何DebugBreak在 Windows 平台上安装处理程序?



我们无法真正分辨出谁对此负责,因为 MSDN 上的DebugBreak 和 __debugbreakC/C++ Assertions没有记录该行为。

0 投票
0 回答
41 浏览

python-3.x - 调试实现 __getattr__ 的类的深拷贝问题

我有一个类,它有一个 enum.Flag 类型的实例变量。它的实现__getattr__使我可以返回由名称给出的标志的布尔状态。

该代码在没有调试的情况下运行良好,产生预期的输出。

代码示例无需调试即可运行。 控制台输出。

但是,当我使用 Visual Studio 调试器(VS 2019、16.7.4、Python 3.6、64 位)运行它时,它总是在__getattr__方法中停止,我需要继续 100 次,直到我可以正常继续。我没有设置断点!

VS 2019 调试器在 __getattr__ 中停止

我在 IDLE 中测试了相同的代码。IDLE在调试期间不会停止在getattr中!

我怎样才能摆脱那些烦人的误报干扰我的调试会话?