QAVisual C++ 7.1Visual C++ 8.0Windows VistaVisual C++ 7.0Windows 2003Windows 2000Visual C++ 6.0Windows XP中级开发Visual StudioWindowsC++
Hardwired 的 Debug 类





1.00/5 (7投票s)
2005年2月21日
1分钟阅读

35394

186
适用于单线程和多线程应用程序的调试工具类。
引言
我创建这个类是因为我需要在多线程应用程序中跟踪一些对象。由于对象在实际创建之前被使用,或者在销毁后被引用,遇到了很多问题。当然,在小型应用程序中你可能不会遇到这类问题,但如果事情变得非常复杂……那么你可能应该从一开始就考虑使用这个类。
Using the Code
使用这段代码很简单,你无需稍后考虑它。只需设置并忘记它。在/RELEASE 模式下,你不会遇到任何问题,因为CDebugTrace
对象将为空。
首先,将debugtrace.h和debugtrace.cpp添加到你的项目中。之后,将一个CDebugTrace
对象添加到对你的项目重要的类中(我建议你对所有类使用它)。以下是这个类的示例用法
//
// MyClass.h
//
#include "debugtrace.h"
class MyClass
{
CDebugTrace Trace;
public:
MyClass();
~MyClass();
void SomeMethod(void);
...
};
//
// MyClass.cpp
//
#include "myclass.h"
MyClass::MyClass()
: Trace( "MyClass" )
{
...
}
MyClass::~MyClass()
{
...
}
void MyClass::SomeMethod()
{
Trace.Print("entered SomeMethod" );
...
}
如果你像这样使用它,你将知道该对象是什么时候创建或销毁的,以及它的生命周期。
你也可以像这样使用CDebugTrace
来跟踪函数
void SomeFunction( void )
{
CDebugTrace Trace( "SomeFunction" );
...
}
这样,你就可以知道该函数何时执行以及运行时间。
关注点
这个类对我的帮助很大,还可以添加很多其他功能。例如,CPU和内存统计信息可能也有帮助。
历史
- 2005年2月21日:版本 1.0
好吧,我必须从某个地方开始。这是我的第一篇文章。
许可证
本文未附加明确的许可证,但可能在文章文本或下载文件本身中包含使用条款。如有疑问,请通过下面的讨论区联系作者。
作者可能使用的许可证列表可以在此处找到。