在调试模式下查看变量的内容? (除了断点)

时间:2011-05-14 20:21:59

标签: c++ windows opengl

我正在编写一个计算Mandelbrot Set的程序(然后在Windows下的OpenGL中渲染它),以便利用并行编程技术。

我应该演示线程,互斥和信号量的使用;所以目前我正在使用多个线程计算集合(水平拆分设置)并计算每个线程,然后将其添加到总计(总数是一个受互斥锁保护的全局变量)

我希望能够在调试模式下查看总数 - 是否有任何相对简单的方法可以做到这一点,除了在OpenGL窗口中渲染总数,还是用断点检查变量的内容?

3 个答案:

答案 0 :(得分:2)

最简单的方法是以某种方式将消息输出到调试流,然后使用IDE查看它。 在Windows下,您可以使用:     OuputDebugString(LPCTSTR lpOutputString);

答案 1 :(得分:2)

如果您使用的是Windows,则可以使用OutputDebugString并使用名为DebugView的工具查看结果。缺点是它会在新行上打印每个值而不是更新它(我猜你喜欢它)。

如果您想要查看将在原地更新的值,您可以使用Performance Counters,但这更麻烦:首先,您的程序必须实现provider 。其次,您必须编写另一个程序(消费者)来跟踪此counter并显示它。但是如果你想要最大的灵活性,这个API很棒,因为它意味着许多程序可以观察提供者的计数器,例如,它们可以记录到文件中并重放或变成图形。

答案 2 :(得分:0)

您应该能够从调试器中读取全局变量。你试过吗?