void unexpected();
The function calls the current unexpected handler, a function of type void () called when control leaves a function
by a thrown exception of a type not permitted by an exception specification for the function, as in:
void f() throw() // function may throw no exceptions
{throw "bad"; } // unexpected throw calls unexpected()
An unexpected handler may not return to its caller. It may terminate execution by:
bad_exception. terminate(), abort(), or exit(int). At program startup, the unexpected handler is a function that calls terminate().