这是我在应用中发现的问题,以此记录下。
当我使用Qt创建一个单例dialog时,为了给其设置父对象,我使用了setParent(this)。但由于同时这个单例dialog是个静态对象,使得dialog对象指针被重复释放。
//在waitingdlg.h中
static WaitingDlg &GetInstance(){
static WaitingDlg dlg;
return dlg;
};
//在mainwindow构造函数中(等待1s后执行,是因为需要父对象构造函数执行完后再设置setParent(this))
QTimer