- cstdlib[meta header]
- std[meta namespace]
- function[meta id-type]
namespace std {
void abort(); // (1) C++98
[[noreturn]] void abort() noexcept; // (1) C++11
}プログラムを異常終了させる。
この関数は、シグナルハンドラでシグナルSIGABRTを捕捉しない限り、プログラムを異常終了させる。
この関数を呼び出したときに生存しているオブジェクトは、破棄されない。
atexit()で登録された関数は、呼び出されない。
raise(SIGABRT);- raise[link /reference/csignal/raise.md]
- SIGABRT[link /reference/csignal/sigabrt.md]
この関数は決して返らない。
- この関数は、フリースタンディング処理系でも使用できる。
#include <cstdlib>
int main()
{
std::abort();
}- std::abort()[color ff0000]
Aborted
- LWG Issue 1066. Use
[[noreturn]]attribute in the library- C++11で、呼び出し元へ戻らない標準ライブラリ関数に
[[noreturn]]属性が付加された
- C++11で、呼び出し元へ戻らない標準ライブラリ関数に