QMainWindow中点击按钮弹出QWidget

问题遇到的现象:
m_calib= new Calibrate();


#include <QWidget>
#include"getttable.h"
namespace Ui {
class Calibrate;
}

class Calibrate : public QWidget
{
    Q_OBJECT

public:
    explicit Calibrate(QWidget *parent = nullptr);
    ~Calibrate();
    void closeEvent(QCloseEvent *event);
public slots:
private slots:
private:
    Ui::Calibrate *ui;
};
#endif // CALIBRATE_H

    m_calib= new Calibrate();
    connect(m_calib,&Calibrate::sigSendCmd,m_busObj,&BusinessIf::slotSendCmd);
    

现象:信号槽无法发送数据
解决方法:


    m_calib= new Calibrate;
    connect(m_calib,&Calibrate::sigSendCmd,m_busObj,&BusinessIf::slotSendCmd);

这是为什么呢?

m_calib = new Calibrate();m_calib = new Calibrate;等价的,没看出有什么区别。

m_calib= new Calibrate();调用的是无参构造
m_calib = new Calibrate,调用的是默认构造