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()输出一条信息级别的消息,这条信息会显示。

相关推荐
慧都小项5 天前
当边缘AI上产线:QtitanDocking 如何让工业 HMI 实现多视图协同
人工智能·qt·ui·边缘计算·qt6.3
Quz6 天前
QML SwipeDelegate 滑动委托
qt
Quz6 天前
QML 列表中的四种委托:ItemDelegate、CheckDelegate、RadioDelegate、SwitchDelegate
qt
实心儿儿6 天前
Qt — 显示类控件
qt
江湖人称菠萝包6 天前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter9-Qt Charts
笔记·qt·qt5
扶尔魔ocy6 天前
【QT android】环境安装及第一个QT项目
qt·andriod开发
江湖人称菠萝包6 天前
【Qt】《Qt 5.9 C++开发指南》笔记-Chapter10-Data Visualization
笔记·qt·qt5
Cx330❀7 天前
Qt 常用控件属性与底层机制详解:从窗口半透明、浮点数陷阱到 QSS 与焦点策略
qt·ui·图形渲染
Quz7 天前
QML DelegateChooser:多条件组合与按列选择委托
qt
Quz7 天前
QML DelegateChooser:按角色选择委托与按索引选择委托
qt