Qt 如何禁用qInfo()输出
我要运行以下代码段。其中我想看到qDebug()的结果,但我不想看到qInfo()的结果。我想在此基础上对其进行配置,所以有时我需要这些qInfo()输出,有时不需要Qt 如何禁用qInfo()输出,qt,debugging,qdebug,Qt,Debugging,Qdebug,我要运行以下代码段。其中我想看到qDebug()的结果,但我不想看到qInfo()的结果。我想在此基础上对其进行配置,所以有时我需要这些qInfo()输出,有时不需要 qInfo()<<"Info print"; qDebug()<<"Debug print"; qInfo()如上所述,您必须使用QT\u NO\u INFO\u输出编译以禁用它 #您的.pro文件 定义+=QT\u不推荐的\u警告QT\u否\u信息\u输出 也可以对其他宏使用“定义”
qInfo()<<"Info print";
qDebug()<<"Debug print";
qInfo()如上所述,您必须使用QT\u NO\u INFO\u输出编译以禁用它
#您的.pro文件
定义+=QT\u不推荐的\u警告QT\u否\u信息\u输出
也可以对其他宏使用“定义”:
qDebug()
:使用QT\u NO\u DEBUG\u输出禁用
qInfo()
qWarning()
qCritical()
:使用QT\u FATAL\u critical启用
您可以在运行时使用QLoggingCategory::setFilterRules
从Qt文档中,以自定义类别为例:
QLoggingCategory::setFilterRules(QStringLiteral("driver.usb.debug=true"));
对于您的情况:
QLoggingCategory::setFilterRules(QStringLiteral("*.info=false"));
请注意使用“*.info=true”
,因为启用所有内容,即使是分析类别通常也是禁用的