2009-08-10 5 views

risposta

13

Non è necessario rimuovere l'inclusione dell'intestazione. Se lo fai, ogni affermazione che coinvolge qDebug potrebbe dare un errore del compilatore.

Invece, definire il simbolo QT_NO_DEBUG_OUTPUT durante la compilazione per il rilascio. qDebug non farà nulla quando quel simbolo è definito e (si spera) il compilatore ottimizzerà le chiamate verso una funzione che non fa nulla.

+1

Questo non è sufficiente perché si possono ancora ricevere messaggi qDebug dalle librerie Qt. Se sei uno sviluppatore Windows puoi verificare con il programma dbgview di SysInternals. – hmuelner

1

L'idea migliore potrebbe essere quella di esaminare qInstallMsgHandler. Puoi reindirizzare i tuoi messaggi di debug ovunque desideri.