在我的 wxWidgets 应用程序中,我正在检查命令行参数,如果找到,我会执行一个操作,然后关闭窗口。但是,我似乎无法让应用程序正确关闭。我想用退出代码关闭程序,例如 3。当我检查 wxApp::OnInit 中的命令行参数时,我尝试调用exit(3)
,但是,这似乎不合适,因为它导致 wxwidgets 中某处的内存泄漏.
然后我尝试存储退出代码,覆盖 OnRun 并返回那里,但是,当我这样做时,init.cpp
我472
在return wxTheApp->OnRun();
.
有谁知道在检测到应用程序应该关闭后如何使用来自 wxApp 的自定义退出代码正确关闭应用程序?我也尝试过重载wxApp::OnExit
,但是,即使我没有重载,它也永远不会被调用OnRun
。
http://codepad.org/WYiOJq55上的代码示例,由于某些原因,此帖子中不允许使用该代码
编辑粘贴代码:
int SomeApplication::OnRun()
{
if(mExitCode != 0)
{
ExitMainLoop();
return mExitCode;
}
else
return wxApp::OnRun();
}