写应用程序免不了需要使用日志来记录或者调试一些信息,Qt一个这么大的框架,当然免不了集成了一套日志输入的框架,那就是QLoggingCategory 。
废话不多说,直接说用法:
可能常用的qDebug() qWarning等,但是不推荐,改用:
qCDebug(), qCWarning(), qCCritical()等,为什么呢?因为这系列接口提供了一个额外的参数来指明是哪个模块的日志。
比如:
// in a header Q_DECLARE_LOGGING_CATEGORY(driverUsb) // 这个是声明式(放在头文件给其他源文件声明使用) // in one source file Q_LOGGING_CATEGORY(driverUsb, "driver.usb") // 这个是定义式(只定义一次,放在源文件)
// usbEntries() will only be called if driverUsb category is enabled qCDebug(driverUsb) << "devices: " << usbEntries();
这样打印出来就信息类似于:driver.usb: devices: