QT/C++编程关于delete ui的问题

Triple_HHH3 2019-09-05 02:47:52

Qt Creator编译的窗口类是用的是*ui,在析构函数中可以通过delete ui释放内存,如下:

QWDialogSize::~QWDialogSize()
{
delete ui;
}

但是我用的是VS添加的QT的窗口类,自动创建的是

创建的是Ui::QWDialogSize ui;

使用“delete ui;”来释放内存则报错



请问在使用VS/QT编程的情况下我应该如何delete窗口类释放内存?
...全文
2165 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
Triple_HHH3 2020-06-03
  • 打赏
  • 举报
回复
引用 5 楼 Ujig的回复:
[quote=引用 2 楼 Triple_HHH3 的回复:] [quote=引用 1 楼 真相重于对错的回复:]如果不是指针,它会自动释放
我想问问,为什么QT Creator创建的窗口类生成的是*ui的私有变量,而用VS创建QT的窗口类生成的是ui的私有变量?[/quote] 您好,我也在为这个问题困扰,您解决了吗?[/quote] 没有解决,我现在也不在用qt了
Ujig 2020-06-03
  • 打赏
  • 举报
回复
引用 2 楼 Triple_HHH3 的回复:
[quote=引用 1 楼 真相重于对错的回复:]如果不是指针,它会自动释放
我想问问,为什么QT Creator创建的窗口类生成的是*ui的私有变量,而用VS创建QT的窗口类生成的是ui的私有变量?[/quote] 您好,我也在为这个问题困扰,您解决了吗?
Ujig 2020-06-03
  • 打赏
  • 举报
回复
引用 2 楼 Triple_HHH3 的回复:
[quote=引用 1 楼 真相重于对错的回复:]如果不是指针,它会自动释放
我想问问,为什么QT Creator创建的窗口类生成的是*ui的私有变量,而用VS创建QT的窗口类生成的是ui的私有变量?[/quote] 您好,我也在为这个问题困扰,您解决了吗?
真相重于对错 2019-09-05
  • 打赏
  • 举报
回复
qt没有了解过。所以creator为何用指针,而vs不用,我不清楚。 这两个从语法上的区别在于,指针的话,他的生存期,由用户确定,如果不在析构函数中delete,将永远存在直到程序结束。 你要是用普通变量,他的生存期由包含他的类对象决定,当类对象结束时,他也结束。
Triple_HHH3 2019-09-05
  • 打赏
  • 举报
回复
引用 1 楼 真相重于对错的回复:
如果不是指针,它会自动释放
我想问问,为什么QT Creator创建的窗口类生成的是*ui的私有变量,而用VS创建QT的窗口类生成的是ui的私有变量?
真相重于对错 2019-09-05
  • 打赏
  • 举报
回复
如果不是指针,它会自动释放

3,882

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 其它技术问题
社区管理员
  • 其它技术问题社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧