日志类
此类使用qInstallMessageHandler注册一个自定义的消息处理器替换掉默认QtMessageHandler。
通过 qInstallMessageHandler(QtMessageHandler handler)函数注册一个自定义的 MessageHandler,QtMessageHandler 的定义如下:
typedef void (*QtMessageHandler)(QtMsgType, const QMessageLogContext &, const QString &);
可以看到,QtMessageHandler 并不是一个类,而是一个函数指针,函数原型满足 void myMessageHandler(QtMsgType, const QMessageLogContext &, const QString &)
的函数都可以作为 QtMessageHandler 参数传递个 qInstallMessageHandler
函数中。
话不多说,上代码。
Wlog.h
#ifndef WLOG_H
#define WLOG_H
//解决中文乱码 源代码编码必须是: UTF-8(BOM)
#if _MSC_VER >= 1600
#pragma execution_character_set("utf-8")
#endif
#include <QObject>