目标:实现qDebug()函数的定制输出,包含文件名、函数名、行数等信息
1,通过qSetMessagePattern函数,实现定制化输出
int main(int argc, char **argv)
{
QApplication app(argc, argv);
// 改变缺省消息处理程序的输出,信息:线程:功能函数(行数):时间
qSetMessagePattern("%{message} :id=%{threadid} %{function}(%{line}):%{time [hh:mm:ss zzz]}");
// 打印信息
qDebug("This is a debug message.");
qInfo("This is a info message.");
qWarning("This is a warning message.");
qCritical("This is a critical message.");
//qFatal("This is a fatal message.");
...
return app.exec();
}
输出信息
This is a debug message. :id=815 main(217):[11:37:24 843]
This is a info message. :id=815 main(218):[11:37:24 843]
This is a warning message. :id=815 main(219):[11:37:24 844]
This is a critical message. :id=815 main(220):[11:37:24 844]
| 占位符 | 描述 |

本文介绍了如何通过qSetMessagePattern函数定制QApplication中QDebug等函数的输出,包括添加文件名、函数名和行号等信息,并说明了Release版本和.pro文件设置对日志的影响以及如何控制不同级别的日志输出。
最低0.47元/天 解锁文章
1913

被折叠的 条评论
为什么被折叠?



