概念
在我们使用软件时大多使用release版本,这样在使用过程中的调试信息就不会显示出来,为了将调试信息打印在界面上或者放在文件中保存起来我们就可以使用重定向的技术。
在QT的帮助文档:qInstallMessageHandler中我们可以看到重定向的简单例子。
参考链接(https://www.cnblogs.com/wyuzm/p/9580447.html):
qInstallMessageHandler(调试详细日志文件输出):
此函数在使用Qt消息处理程序之前已定义。返回一个指向前一个消息处理程序。
- 消息处理程序是一个函数,用于打印qDebug,qWarning,qCritical和qFatal的错误消息。Qt库(调试模块)包含成百上千的警告信息,打印时(通常是无效的函数参数)发生内部错误。Qt构建在release模式下还包含一些除了QT_NO_WARNING_OUTPUT和/或QT_NO_DEBUG_OUTPUT之外的警告已经设置在编译。如果你实现自己的消息处理程序,需要完全控制这些消息。
- 在X11或Windows下的调试器,缺省的消息处理程序向标准输出打印消息。如果这是一个致命的消息,应用程序立即中止。
- 只有一个消息处理程序可以被定义,因为这通常是在应用程序的基础上