xto*_*ofl 6 c++ debugging qt signals-slots qt5
我们使用的时候失去了很多的时间connect从/到一个不存在的信号/插槽,因为Qt的只是提醒我们在运行时某处控制台日志记录.
除了发展到QT5,它使用的类型系统报告,并从这些问题更改代码对所有connect的系统调用,有另一种方式拥有了Qt运行时如扔了,或者干脆死机,或者大声地提醒我,当连接错误了吗?
您可以在连接上使用包装器,当某些连接失败时,该包装器会停止程序:
inline void CHECKED_CONNECT( const QObject * sender, const char * signal,
const QObject * receiver, const char * method,
Qt::ConnectionType type = Qt::AutoConnection )
{
if(!QObject::connect(sender, signal, receiver, method, type))
qt_assert_x(Q_FUNC_INFO, "CHECKED_CONNECT failed", __FILE__, __LINE__);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1264 次 |
| 最近记录: |