【Qt 学习笔记】如何在Qt中打印日志 | qDebug的使用 | Assistant的使用


  • 博客主页:Duck Bro 博客主页
  • 系列专栏:Qt 专栏
  • 关注博主,后期持续更新系列文章
  • 如果有错误感谢请大家批评指出,及时修改
  • 感谢大家点赞👍收藏⭐评论✍

如何在Qt中打印日志 | qDebug的使用

文章编号:Qt 学习笔记 / 07


一、如何在Qt中打印日志

在上文【Qt 学习笔记】Day3 | Qt 中出现乱码的解释及讨论中提到Qt中出现乱码的情况,在使用C++的方式打印时会出现乱码的情况,在Qt中可以使用qDebug()来打印日志信息用来调试。

举例代码:

#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
#include <iostream>
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    std::cout << "测试代码"<<std::endl;
    qDebug() << "测试代码"<< endl;
}

Widget::~Widget()
{
    delete ui;
}

输出结果:
在这里插入图片描述

结论: 在Qt中打印日志可以使用QDebug类。 QDebug类提供了一个方便的打印日志的方法,可以将日志输出到控制台、文件或其他输出设备。打印日志:使用qDebug()函数打印日志。qDebug()函数类似于printf()函数,可以接受多个参数,并按照指定的格式打印日志。


二、qDebug的使用

在Qt中,qDebug是一个非常常用的输出调试信息的函数。它可以输出各种类型的信息,比如字符串、数字、对象等。

使用qDebug输出调试信息的方法非常简单,只需要包含头文件#include <QDebug>,然后在需要输出调试信息的地方调用qDebug函数即可。例如:

#include <QDebug>

int main()
{
    int age = 18;
    QString name = "Duck Bro";
    
    qDebug() << "Name:" << name << ", Age:" << age;
    
    return 0;
}

上面的代码中,我们包含了QDebug的头文件,并在主函数中使用了qDebug函数输出了一个字符串和一个整数。

qDebug函数可以接受多个参数,参数之间使用<<进行连接。可以输出各种类型的值,包括但不限于:字符串、整数、浮点数、布尔值、指针等。

除了使用qDebug函数输出调试信息之外,还可以使用qWarning、qCritical、qFatal等函数输出不同级别的错误信息。使用方式与qDebug类似。

注意:使用qDebug输出的调试信息只会在调试模式下显示,而在发布模式下是不会显示的。所以在发布前,需要将代码中的qDebug语句删除或注释掉,以避免不必要的输出。


三、在Assistant中查看qDebug的使用

  1. 打开Qt自带离线的官方文档Assistant
    在这里插入图片描述
  2. 进入Assistant界面,进行索引搜索qDebug,下滑查看Basic Use(常规使用)

在这里插入图片描述


在这里插入图片描述

相关推荐

  1. QT】QStackedWidget一利器,常项目使用

    2024-04-03 05:30:02       9 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-03 05:30:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-03 05:30:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-03 05:30:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-03 05:30:02       20 阅读

热门阅读

  1. 【webrtc】m98: 音视频流同步 StreamSynchronization

    2024-04-03 05:30:02       17 阅读
  2. uniapp小程序使用uQRCode.js生成二维码

    2024-04-03 05:30:02       14 阅读
  3. 游戏盾SDK为小程序APP提供安全的网络保障!

    2024-04-03 05:30:02       13 阅读
  4. 云原生学些-第一章-云原生到底是什么?

    2024-04-03 05:30:02       16 阅读
  5. MySQL、Redis 和 Zookeeper 实现分布式锁方法及优缺点

    2024-04-03 05:30:02       15 阅读
  6. react native的事件通知 DeviceEventEmitter

    2024-04-03 05:30:02       14 阅读
  7. 【SpringCloud】Eureka注册中心 代码详细介绍

    2024-04-03 05:30:02       19 阅读
  8. linux防火墙设置端口对外开放

    2024-04-03 05:30:02       16 阅读
  9. Clickhouse为什么如此快?

    2024-04-03 05:30:02       12 阅读
  10. 关于其他服务器篡改请求头导致登录失效

    2024-04-03 05:30:02       15 阅读
  11. 大语言模型开发各个阶段的评估方法(未完)

    2024-04-03 05:30:02       16 阅读