qt退出应用程序(exe)的方法

当你想退出应用程序 , 也就是关闭app应用的时候 , 这个时候你不用关心进程和线程的生命周期了 , 其实即使你直接在退出的时候让整个程序非法关闭退出 , 直接crash掉也是可以的 。
不过作为一个优秀的程序员还是应该多考虑一下 , 在退出的时候是不是释放了所有的内存 , 检查一下是不是退出的时候应该做一个退出提示的弹窗或者退出成功的一个提示 , 显得更加人性化 , 这都是必须的程序员修养 。
还有一个是你什么时候发出退出app的命令 , 或者关闭窗口 , 才能在退出前把你的业务以及逻辑都执行完 , 而不会影响到用户体验 。 我就看到有人在发出app退出的时候睡眠5s , 造成卡顿延时 。
QT中退出程序的方法有以下几种
方法1:
qt退出应用程序(exe)的方法
文章图片
方法2:
qt退出应用程序(exe)的方法
文章图片
可以将以上方法加入到关闭程序的槽函数中 。 当然如果你不care非法关闭的情况 , 完全可以制造一个crash , 直接析构一个非法指针 , 造成app闪退崩掉 。
当然还有一个关闭窗口的方法:
close()//仅仅是关闭某一个窗口同样加入到槽函数中
qt退出应用程序(exe)的方法】首先点击X时 , 会响应closeEvent事件 , 所以只要在该事件函数中做处理即可
qt退出应用程序(exe)的方法
文章图片
closeEvent()定义为一般函数即可(不用定义为槽函数)然后实现它的功能即可 。
在MFC里退出app的方法主要是以下几种(主要是窗口关闭)
PostQuitMessage(0);//最常用
PostMessage(WM_QUIT,0,0);//最常用
::SendMessage(AfxGetMainWnd()->m_hWnd,WM_CLOSE,0,0);//最常用
::PostMessage(AfxGetMainWnd()->m_hWnd,WM_CLOSE,0,0);//最常用
ExitProcess(0);//注意使用时先释放分配的内存,以免造成内存泄露
exit(0);//正常终止程序;exit(非0)非正常终止程序
向主窗口发送WM_CLOSE消息
SendMessage(WM_CLOSE);
如果要在其它类关闭应用程序 , 则
AfxGetMainWnd->SendMessage(WM_CLOSE);
qt退出应用程序(exe)的方法
文章图片