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

相关推荐
Quz20 小时前
QML 基础按钮:Button、RoundButton 与 DelayButton
qt
Quz20 小时前
QML ToolTip 组件:图标、多行文本与阴影
qt
xcyxiner20 小时前
DicomViewer14(读取图像按固定窗宽窗位显示)
qt
马里马里奥-2 天前
从零搭建AI Agent工具链的技术文章大纲
开发语言·qt
Quz2 天前
QML 与 JavaScript 交互方式:内联函数、外部文件、信号槽与工作线程
javascript·qt
Quz2 天前
QML ToolTip 组件:延迟提示与自定义外观
qt
wWYy.2 天前
RPC详解
qt·rpc·php
Fu_Lin_2 天前
Qt嵌入式从零基础到精通(01):Qt嵌入式开发全景图:从桌面Qt到ARM Linux
linux·arm开发·qt·qt5·嵌入式linux
海清河晏1112 天前
Qt实战:从零构建美化登录界面
开发语言·c++·qt
Fu_Lin_2 天前
《Qt嵌入式从零基础到精通》前言与阅读指南
开发语言·qt