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()。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。