Пространства имён
Варианты
Действия

std::terminate

Материал из cppreference.com
< cpp‎ | error

 
 
 
Обработка ошибок
Обработка исключений
Оригинал:
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>
[[noreturn]] void terminate();
std::terminate() вызывается C + + Runtime при обработке исключений неудачно по любой из следующих причин:
Оригинал:
std::terminate() is called by the C++ runtime when exception handling fails for any of the following reasons:
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
1)
исключение, а не пойман (это определяется реализацией ли стек разматывания сделано в данном случае)
Оригинал:
an exception is thrown and not caught (it is implementation-defined whether any stack unwinding is done in this case)
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
2)
исключение во время обработки исключений (например, из деструктора некоторые местные объекта, или функции, которые должны были быть вызвана во время обработки исключений)
Оригинал:
an exception is thrown during exception handling (e.g. from a destructor of some local object, or from a function that had to be called during exception handling)
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
3)
конструктор или деструктор статического или потока локального объекта создается исключение
Оригинал:
the constructor or the destructor of a static or thread-local object throws an exception
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
4)
Функция зарегистрировано std::atexit или std::at_quick_exit вызывает исключение
Оригинал:
a function registered with std::atexit or std::at_quick_exit throws an exception
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
5)
noexcept спецификации нарушается (это определяется реализацией ли стек разматывания сделано в данном случае)
Оригинал:
a noexcept спецификации is violated (it is implementation-defined whether any stack unwinding is done in this case)
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
6)
динамическая спецификация исключений нарушается, и обработчик по умолчанию для std::unexpected выполняется
Оригинал:
a динамическая спецификация исключений is violated and the default handler for std::unexpected is executed
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
7)
не по умолчанию обработчик std::unexpected генерирует исключение, которое нарушает ранее нарушал динамические спецификации исключения, если спецификация не включает std::bad_exception
Оригинал:
a non-default handler for std::unexpected throws an exception that violates the previously violated dynamic exception specification, if the specification does not include std::bad_exception
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
8)
std::nested_exception::rethrow_nested вызывается для объекта, который не держит захваченных исключение
Оригинал:
std::nested_exception::rethrow_nested is called for an object that isn't holding a captured exception
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
9)
исключение из начальной функцией std::thread
Оригинал:
an exception is thrown from the initial function of std::thread
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
10)
объединяемые std::thread уничтожены или назначены
Оригинал:
a joinable std::thread is destroyed or assigned to
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.
std::terminate() также может быть вызвана непосредственно из программы.
Оригинал:
std::terminate() may also be called directly from the program.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.


В любом случае, std::terminate вызывает в настоящее время установлены std::terminate_handler. По умолчанию std::terminate_handler звонки std::abort.
Оригинал:
In any case, std::terminate calls the currently installed std::terminate_handler. The default std::terminate_handler calls std::abort.
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.


Содержание

[править] Параметры

(Нет)

[править] Возвращаемое значение

(Нет)

[править] Исключения

noexcept-спецификация:  
noexcept
  (начиная с C++11)

[править] См. также

Тип функции вызываются std::terminate
Оригинал:
the type of the function called by std::terminate
Текст был переведён автоматически через Google Translate.
Вы можете проверить и исправить перевод. Для инструкций кликните сюда.

(определение типа) [edit]