Ich benutze Qt 4.8.x, also habe ich keinen Zugriff auf die neue connect
-Schnittstelle von Qt5, aber ich möchte besser gewarnt werden, wenn eine Signal/Slot-Verbindung fehlschlägt, weil ich einen Signal- oder Slot-Namen falsch geschrieben habe.Können Sie veranlassen, dass Qt Assert, Segfault oder auf andere Weise abstürzt, wenn ein QObject :: connect() fehlschlägt?
Momentan spuckt alle Qt eine Fehlermeldung aus, wenn die Verbindung versucht wird. Allerdings hat mein Programm viele Ausgaben auf stdout
, so dass es leicht ist, diese Fehler manchmal zu übersehen. Ist es möglich, dass meine Anwendung durch eine assert-, segfault- oder andere Methode zum Absturz gebracht wird, wenn eine connect-Anweisung fehlschlägt?
Können Sie genauer darüber sein, wie dies zu tun ist? –
Ich werde genauer in meiner Frage sein. Ist das eine Betriebssystemumgebungsvariable? Oder ist es etwas, das Sie in der '.pro' Datei einstellen? Wie setzen Sie die Umgebungsvariable 'QT_FATAL_WARNINGS' auf einen Wert ungleich Null? –
Es ist eine Betriebssystemumgebungsvariable; Wie Sie es einstellen, hängt von Ihrem OS/IDE ab. Wenn Sie Creator verwenden, können Sie zusätzliche Umgebungsvariablen im Projektbereich unter den Ausführungseinstellungen festlegen. Unter Linux/Unix mit einer sh-artigen Shell können Sie 'QT_FATAL_WARNINGS = 1./YourApp' oder' setenv QT_FATAL_WARNINGS = 1' ausführen, um es dauerhaft in dieser Shell zu setzen. Unter Windows befindet es sich irgendwo in der Systemsteuerung -> System. – peppe