我的程序中的某些功能需要运行很长时间,以便用户可能会中断它。结构是这样的:
int MainWindow::someFunc1()
{
//VP is a class defined somewhere.
VP vp1;
//the for loop that needs time to execute.
return 0;
}
int MainWindow::someFunc2()
{
VP vp2;
//another loop that consumes time.
return 0;
}
如果用户运行其中一个函数或同时运行并单击右上角的退出,程序仍将在后台运行,直到循环结束。我尝试在 void closeEvent(QCloseEvent *) 中释放资源:</p>
void MainWindow::closeEvent(QCloseEvent *)
{
vp.stopIt();
}
但是由于 vp1 和 vp2 是局部变量,我不知道如何将它们传递给 closeEvent() 函数并释放资源。任何建议将不胜感激。