std::unexpected_handler

来自cppreference.com
< cpp‎ | error

 
 
实用工具库
类型的支持 (basic types, RTTI, type traits)
动态内存管理
错误处理
程序实用工具
可变参数函数
日期和时间
函数对象
initializer_list(C++11)
bitset
hash(C++11)
关系运算符
原文:
Relational operators
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
rel_ops::operator!=
rel_ops::operator>
rel_ops::operator<=
rel_ops::operator>=
对和元组
原文:
Pairs and tuples
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
pair
tuple(C++11)
apply(C++17)
make_from_tuple(C++17)
piecewise_construct_t(C++11)
piecewise_construct(C++11)
integer_sequence(C++14)
交换,前进和移动
原文:
Swap, forward and move
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
swap
exchange(C++14)
forward(C++11)
move(C++11)
move_if_noexcept(C++11)
类型操作
原文:
Type operations
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
declval(C++11)
as_const(C++17)
 
错误处理
异常处理
原文:
Exception handling
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
exception
uncaught_exception
exception_ptr(C++11)
make_exception_ptr(C++11)
current_exception(C++11)
rethrow_exception(C++11)
nested_exception(C++11)
throw_with_nested(C++11)
rethrow_if_nested(C++11)
异常处理故障
原文:
Exception handling failures
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
terminate
terminate_handler
get_terminate(C++11)
set_terminate
unexpected(过时)
bad_exception
unexpected_handler(过时)
get_unexpected(C++11)(过时)
set_unexpected(过时)
异常类
原文:
Exception categories
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
logic_error
invalid_argument
domain_error
length_error
out_of_range
runtime_error
range_error
overflow_error
underflow_error
错误代码
原文:
Error codes
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
错误代码
errno
断言
原文:
Assertions
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
assert
SYSTEM_ERROR设施
原文:
system_error facility
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
error_category(C++11)
generic_category(C++11)
system_category(C++11)
error_condition(C++11)
errc(C++11)
error_code(C++11)
system_error(C++11)
 
定义于头文件 <exception>
typedef void (*unexpected_handler)();
(过时)
std::unexpected_handler的函数指针类型(指针到函数不带任何参数,并返回void),这是安装和查询的功能std::set_unexpectedstd::get_unexpected,并呼吁通过std::unexpected.
原文:
std::unexpected_handler is the function pointer type (pointer to function that takes no arguments and returns void), which is installed and queried by the functions std::set_unexpected and std::get_unexpected and called by std::unexpected.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
C + +的实现提供了一个默认std::unexpected_handler功能,这就要求std::terminate()。如果空指针的值是安装(手段std::set_terminate),实现可能会恢复默认的处理程序,而不是.
原文:
The C++ implementation provides a default std::unexpected_handler function, which calls std::terminate(). If the null pointer value is installed (by means of std::set_terminate), the implementation may restore the default handler instead.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
用户定义的std::unexpected_handler预计终止程序,或者抛出一个异常。如果它抛出一个异常,可能会遇到以下三种情况之一的:
原文:
A user-defined std::unexpected_handler is expected to either terminate the program or throw an exception. If it throws an exception, one of the following three situations may be encountered:
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
1)
std::unexpected_handler满足动态例外,规范,违反了新的例外是允许逃跑的功能和堆栈平仓继续
原文:
the exception thrown by std::unexpected_handler satisfies the dynamic exception specification that was violated earlier. The new exception is allowed to escape the function and stack unwinding continues.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
2)
抛出的异常的std::unexpected_handler仍然违反的异常规范
原文:
the exception thrown by std::unexpected_handler still violates the exception specification:
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
2A),但是,异常规范允许std::bad_exception:抛出的异常对象被销毁,std::bad_exception是通过C + +运行时抛出,而不是.
原文:
2a) however, the exception specification allows std::bad_exception: the thrown exception object is destroyed, and std::bad_exception is constructed by the C++ runtime and thrown instead.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里
2B)的例外规范不允许std::bad_exceptionstd::terminate()被称为.
原文:
2b) the exception specification does not allow std::bad_exception: std::terminate() is called.
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

[编辑] 另请参阅

(过时)
函数调用动态的异常规范被违反时
原文:
function called when dynamic exception specification is violated
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
改变功能被称为由std::unexpected
原文:
changes the function to be called by std::unexpected
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]
(C++11)(过时)
获得电流unexpected_handler
原文:
obtains the current unexpected_handler
这段文字是通过 Google Translate 自动翻译生成的。
您可以帮助我们检查、纠正翻译中的错误。详情请点击这里

(函数) [edit]