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

相关推荐
慧都产品智能化3 天前
Qt 表格升级攻略:复用已有编辑器,减少重复开发
c++·qt·编辑器·qt6.3
ShineWinsu3 天前
对于Qt:QTableWidget常见属性以及QTableWidgetItem类的解析
开发语言·c++·qt·gui·客户端·表格·qtablewidget
ShineWinsu3 天前
对于Qt:QListWidget常见属性以及QListWidgetItem类的解析
开发语言·c++·qt·客户端·列表·qlistwidget·qlistwidgetitem
ShineWinsu3 天前
对于Qt:QDial常见属性以及信号的解析
开发语言·c++·qt·gui·客户端·旋钮·qdial
宛 禾3 天前
Qt 事件系统完全指南:从事件循环到实战避坑
qt
敲上瘾4 天前
Qt Widgets入门:项目模板解析与Hello World
开发语言·数据库·c++·qt·ui·qt6.3
MOONICK4 天前
QT元数据
开发语言·qt
橙橙笔记5 天前
QT的学习第四部分
linux·qt·学习·音视频
sycmancia5 天前
Qml——信号连接、自定义信号
qt
奇树谦8 天前
Qt Quick 图片加载与 GPU 纹理机制详解:QImage、QQuickTextureFactory、QSGTexture 与异步加载
开发语言·qt·系统架构