#define QT_NO_DEBUG_OUTPUT #include <QCoreApplication> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 你的代码 return a.exec(); } 但请注意,直接在代码中定义QT_NO_DEBUG_OUTPUT可能不会有预期的效果,因为这通常需要Qt内部的处理来识别并据此减少调试输出。更...
可以看到,当定义了QT_NO_DEBUG_OUTPUT宏时,Qt 首先取消先前的qDebug宏定义,然后将其重新定义为QT_NO_QDEBUG_MACRO宏: #defineQT_NO_QDEBUG_MACRO while (false) QMessageLogger().noDebug QT_NO_QDEBUG_MACRO宏定义了一个永远不会执行的条件while (false),我们可以假定[1]编译器不会解释更不会去执行qDebu...
总之,qDebug().noquote() 是用于控制 qDebug() 输出是否包含引号的,而 DEFINES+= QT_NO_DEBUG_OUTPUT 是用于全局控制 Qt 调试输出的。