当前位置导航:炫浪网>>网络学院>>编程开发>>C++教程>>Visual C++教程

通用的应用程序高级日志系统

    日志模块

    本文介绍的日志系统包括七个 C++ 类:CLog, CFuncLog, IStoreLog, CWinLog, CFileLog, CAutoCritic, CLogSimpleLock.CLog 是所有日志模块中最主要的一个类,在大多数情况下,这个类在应用程序中最好是单实例的。但并不是必须的。重要性其次的一个类是 CFuncLog,这个类用于对函数调用的进入和退出进行记录。当然开发人员也可以使用这个类对任何数据进行日志记录。该类重载了 << 操作符,所以使用很方便。

    下图是本文介绍的日志系统使用截图

通用的应用程序高级日志系统

    日志模块的 UML 设计

    从下图可以看到,日志模块类可以分成两个部分:

    1. Storage 类 —— 存储类

    2. Logging 类 —— 日志类

通用的应用程序高级日志系统

    图一 UML 设计的类继承图

    存储类:

    IStoreLog 类的声明

 /////////////////////////////////////////////////////////
// 此类是为一个抽象类,建立三个默认的函数,以便支持所有子类,
// 任何子类都必须支持缓冲和非缓冲存储
/////////////////////////////////////////////////////////
class IStoreLog
{
public:
virtual ~IStoreLog( void ){}; // 虚拟析构函数
virtual int FlushData() = 0;
virtual int WriteString( const std::string &Message ) = 0;
virtual int SetBufferLimit( long lSize ) = 0;
};
共4页 首页 上一页 1 2 3 4 下一页 尾页 跳转到
相关内容
赞助商链接