QT日志级别设置

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

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

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

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

#include 
#include 
#include 

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

你可能感兴趣的:(嵌入式QT开发,qt)