如果发生故障,有没有办法从中获取详细的故障信息QObjet::connect
?
返回的布尔值不提供有关失败原因的任何信息。
我希望异常在 C++ 中能像在 Java 中一样被广泛使用。
除了其他答案之外,您还可以安装自己的函数,用于 Qt 调试、警告或致命消息。我们的程序有这个,对于调试版本,如果它是警告或致命消息,我们会弹出一个详细说明问题的对话框。我相信大多数丢失的插槽连接都显示为警告消息,其中详细说明了它试图连接的内容。很多时候,我看着它显示的内容,它与我认为我正在连接的内容有点不同。
正如 OregonGhost 所说,您必须在运行时检查输出以查看有关连接失败的更多信息。
为确保 Qt 在运行时显示的信息有用,请确保给 QObjects 一个不同的名称(QObject::setObjectName())。
如果我没记错的话,调试版本会向调试器输出更详细的错误消息。不止一次帮助我修复了一个错误。