QT日志级别设置

开发版本代码包含了大量的qDebug,

发布版本可能导致未知异常。

QLoggingCategory::setFilterRules用于设置日志过滤规则,从而控制日志的输出。

以下是一个完整的示例,展示如何通过设置日志过滤规则来禁用qDebug()输出:

cpp 复制代码
#include <QApplication>
#include <QLoggingCategory>
#include <QDebug>

int main(int argc, char *argv[]) {
    QApplication app(argc, argv);

    // 设置日志级别为 QtInfoMsg,禁用 qDebug() 输出
    QLoggingCategory::setFilterRules("*.debug=false");

    // 测试 qDebug() 输出
    qDebug() << "This is a debug message"; // 这条消息不会显示
    qInfo() << "This is an info message";  // 这条消息会显示

    return app.exec();
}
  • QLoggingCategory::setFilterRules("*.debug=false");设置了日志过滤规则,将所有调试级别的日志(*.debug)设置为不输出(false)。

  • 这意味着所有通过qDebug()输出的消息都将被忽略,而不会显示在控制台中。

  • 测试日志输出

    • 使用qDebug()输出一条调试信息,这条信息不会显示。

    • 使用qInfo()输出一条信息级别的消息,这条信息会显示。

相关推荐
繁缕怀夕1 小时前
QT笔记----QCheckBox
数据库·笔记·qt
Antonio9151 小时前
【Q&A】装饰模式在Qt中有哪些运用?
服务器·数据库·qt
enyp807 小时前
Qt中多线程
开发语言·qt
__ocean15 小时前
qml中ComboBox组件onCurrentIndexChanged与onActivated的使用
qt·qml
二进制人工智能17 小时前
【QT5 多线程示例】互斥锁
开发语言·c++·qt
狄加山67517 小时前
QT 学习笔记2
笔记·qt·学习
吃面不喝汤6619 小时前
Qt 多线程设计:死循环与信号槽的权衡
开发语言·qt
cpp加油站21 小时前
无需qt-creator,使用Trae从0到1生成qt的开发、构建、调试环境
开发语言·ide·qt
Antonio9151 天前
【Q&A】Qt中直接渲染和离屏渲染效率哪个高?
开发语言·qt·信息可视化