当QObject :: connect()失败时,你会导致Qt断言,段错误或以其他方式崩溃吗?

Cor*_*ein 8 c++ qt signals-slots

我正在使用Qt 4.8.x,所以我无法访问connectQt5 的新接口,但是当信号/插槽连接失败时,我希望能够更好地收到警报,因为我拼错了信号或插槽名称.

目前,当尝试连接时,所有Qt都会发出错误消息.但是,我的程序有很多输出,stdout所以很容易错过这些错误.当connect语句失败时,是否可以通过assert,segfault或其他方法强制我的应用程序崩溃?

pep*_*ppe 8

是:将QT_FATAL_WARNINGS环境变量设置为非零值.

您可以在Qt Creator的开发过程中执行此操作,方法是转到"项目"窗格,单击"运行",然后在"运行环境"下单击"详细信息",再单击"添加".

编辑添加:您当然也可以为QObject :: connect实现一些包装器,它将检查其返回值,如果返回false则返回assert().