std::experimental::scope_success<EF>::~scope_success

~scope_success() noexcept(noexcept(std::declval<EF&>()()));
(库基础 TS v3)

调用退出函数,若 std::uncaught_exceptions() 的结果小于未捕捉异常计数(常在通常退出时)且 scope_success 活跃,然后销毁存储的 EF (若它为异常对象)与任何其他非静态数据成员。

异常

抛出任何推出函数所抛的异常。

注解

是否在栈回溯时调用析构函数可由比较 std::uncaught_exceptions() 的结果与 scope_success 中的未捕捉异常计数器检测。
不同于 C++ 标准库及其他 C++ TR/TS 中的类类型或类模板实例化,容许 scope_success 的析构函数被容许抛出异常。

参阅

使 scope_success 不活跃
(公开成员函数)