C++ 中的quick_exit() 函数会导致进程正常终止,而不会完全清理资源。
当quick_exit() 被调用时,使用at_quick_exit() 注册的函数按照注册的相反顺序被调用。如果任何已注册的函数导致任何未处理的异常,则调用terminate()。
调用所有注册函数后,调用_Exit(exit_code)。
quick_exit() 原型
void quick_exit(int exit_code);
该函数在<cstdlib> 头文件中定义。
参数:
exit_code
:表示程序退出状态的整数值。
- 如果exit_code 为零或EXIT_SUCCESS,表示终止成功。
- 如果 exit_code 非零或EXIT_FAILURE, 表示失败。
返回:
quick_exit() 函数不返回任何内容。
示例:quick_exit() 函数如何工作?
#include <iostream>
#include <cstdlib>
using namespace std;
void quick_exit1()
{
cout << "Exit Function 1" << endl;
}
void quick_exit2()
{
cout << "Exit Function 2" << endl;
}
int main()
{
/* registering function */
at_quick_exit(quick_exit1);
at_quick_exit(quick_exit2);
quick_exit(0);
return 0;
}
运行程序时,输出将是:
Exit Function 2 Exit Function 1
相关用法
- C++ quick_exit()用法及代码示例
- C++ queue::swap()用法及代码示例
- C++ queue::empty()、queue::size()用法及代码示例
- C++ queue::emplace()用法及代码示例
- C++ queue front()用法及代码示例
- C++ queue::push()、queue::pop()用法及代码示例
- C++ queue::front()、queue::back()用法及代码示例
- C++ qsort()用法及代码示例
- C++ unordered_map cbegin用法及代码示例
- C++ map lower_bound()用法及代码示例
- C++ Unordered_multimap reserve()用法及代码示例
- C++ list assign()用法及代码示例
- C++ std::max()用法及代码示例
- C++ std::string::push_back()用法及代码示例
- C++ Array swap()用法及代码示例
- C++ valarray cos用法及代码示例
- C++ multimap key_comp()用法及代码示例
- C++ Deque erase()用法及代码示例
- C++ List cend()用法及代码示例
- C++ std::less_equal用法及代码示例
注:本文由纯净天空筛选整理自 C++ quick_exit()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。