QT中WA_DeleteOnClose属性

根据http://blog.csdn.net/dbzhang800/article/details/6300021文章,QT中调用close时,默认情况下是不会释放new的内存的,只是干掉了界面,但内存中还有,这个时候有点类似hide函数的功能。

    virtual void setVisible(bool visible);
    inline void setHidden(bool hidden) { setVisible(!hidden); }
    inline void show() { setVisible(true); }
    inline void hide() { setVisible(false); }

但是,在当前窗体类的构造函数中如果设置了this->setAttribute(Qt::WA_DeleteOnClose,true); 那么close时就会在内存中干掉界面,释放new的内存,下次再使用这块内存时(比如show)就会段错误。实际过程是delete了堆内存,并且还调用了析构函数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值