• 1148阅读
  • 3回复

[提问]构造函数里创建的对象,不能删除,会造成内存泄漏吗? [复制链接]

上一主题 下一主题
离线mugua001
 

只看楼主 倒序阅读 楼主  发表于: 2021-09-02


MyWorkThreadQtEh::MyWorkThreadQtEh(QObject *parent) : QObject(parent)
{  
   isStop = false;  
   psw_edit_v2_server *mainThreadObj01 = new psw_edit_v2_server;    


QObject::connect(this, &MyWorkThreadQtEh::call_SendDataToClient_in_MainTread_signal, mainThreadObj01, &psw_edit_v2_server::sendDataToClient_slot);

    mainThreadObj01->deleteLater();          //不能删除,否则 信号槽连接就失效; 问题:不删除,会造成内存泄漏吗?
}


离线sxp1982

只看该作者 1楼 发表于: 2021-09-02
QObject 派生的,使用deleteLater();是可以自动销毁的,但是, 是不是最好指定父类,比如this ?需要知道原理才能用对。我也记不清,我是都会指定父类。
离线mugua001

只看该作者 2楼 发表于: 2021-09-02
回 sxp1982 的帖子
sxp1982:QObject 派生的,使用deleteLater();是可以自动销毁的,但是, 是不是最好指定父类,比如this ?需要知道原理才能用对。我也记不清,我是都会指定父类。 (2021-09-02 15:30) 

嗯,谢谢
离线mugua001

只看该作者 3楼 发表于: 2021-09-02
回 sxp1982 的帖子
sxp1982:QObject 派生的,使用deleteLater();是可以自动销毁的,但是, 是不是最好指定父类,比如this ?需要知道原理才能用对。我也记不清,我是都会指定父类。 (2021-09-02 15:30) 

这里不能带(this),带上报错;

谢谢。
快速回复
限100 字节
 
上一个 下一个