在终止c ++之前调用函数

时间:2014-01-28 11:23:20

标签: c++ windows console-application termination

有没有办法在非面向对象的控制台应用程序(简单主程序)的终止(点击控制台的红色X)上调用函数?

也许要抓住红色X的信息然后处理它......

谢谢!

2 个答案:

答案 0 :(得分:5)

当您在Windows上并且在正常控制台窗口内运行控制台应用程序,然后单击关闭按钮([X])时,这将生成CTRL_CLOSE_EVENT

您可以通过使用SetConsoleCtrlHandler Win32 API函数安装控制台事件处理程序来处理这些问题。

答案 1 :(得分:1)

您可以尝试使用atexit():

http://www.cplusplus.com/reference/cstdlib/atexit/

或者可能是全局对象的析构函数。