在调试模式下查看变量的内容?(断点除外)
Viewing the contents of a variable in debug mode? (Other than with break points)
我正在编写一个程序来计算曼德布洛特集合(然后在Windows下的OpenGL中呈现它),以便利用并行编程技术。
我应该演示线程、互斥体和信号量的使用;所以目前我正在使用多个线程(水平拆分设置)计算集合并为每个线程计时,然后将其添加到总数中(总数是受互斥锁保护的全局变量)
我希望能够在调试模式下查看总计 - 除了在 OpenGL 窗口中呈现总计或使用断点检查变量的内容之外,是否有任何相对简单的方法可以做到这一点?
如果你在Windows上,你可以使用OutputDebugString并使用一个名为DebugView的工具查看结果。缺点是它会在新行上打印每个值,而不是就地更新它(我想这是您更喜欢的)。
如果要查看将就地更新的值,可以使用性能计数器,但这要麻烦得多:首先,程序必须实现提供程序。其次,您必须编写另一个程序(使用者)来跟踪此计数器并显示它。但是,如果您想要最大的灵活性,此API非常棒,因为这意味着许多程序可以观察提供程序的计数器,例如,它们可以记录到文件中并重放或转换为图形。
最简单的方法是以某种方式将消息输出到调试流,然后使用 IDE 查看它。在窗口下,您可以使用: OuputDebugString(LPCTSTR lpOutputString);
您应该能够从调试器读取全局变量。你试过吗?
相关文章:
- 具有奇怪重复模板模式的派生类中的成员变量已损坏
- 为什么在保护模式下继承升级不起作用
- 如何在全屏模式下(在OpenGL中)使背景透明
- 为什么使用__LINE_的代码在发布模式下在MSVC下编译,而不是在调试模式下
- 派生类是否可以在抽象工厂设计模式中具有数据成员
- 此模式的C++RegEx
- 无法删除指针,已触发断点
- avrogencpp能为模式中的每种类型生成单独的头文件吗
- 使用可变模板的Broadcaster/Listener模式
- c++方法参数只能在linux的发布模式下自行更改
- 条件断点在不应该触发时触发
- 资源管理设计模式
- 使用 mod_gsoap 部署服务时,如何在 Gsoap 中更改 soap 上下文的模式?
- C++ 无法在字符数组中使用 for 循环打印字母模式
- 小字符串优化(调试与发布模式)
- 后台模式下的 Gdb 断点
- 抢占模式下不支持 CUDA 动态并行调试.断点将被禁用
- QT Creator:程序在调试模式下崩溃,但在发布模式下工作,在基于QThread的程序的调试模式下有断点
- 在调试模式下查看变量的内容?(断点除外)
- 断点在全屏模式下挂起基于directx的程序