X Tutup
The Wayback Machine - https://web.archive.org/web/20211006180740/https://ru.cppreference.com/w/cpp/error/terminate
Пространства имён
Варианты
Действия

std::terminate

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

 
 
Библиотека утилит
Поддержка языка
Поддержка типа (базовые типы, RTTI, свойства типов)    
Макросы тестирования функциональности библиотеки (C++20)
Управление динамической памятью
Программные утилиты
Обработка ошибок
Поддержка сопрограмм (C++20)
Вариативные функции
(C++17)
Трёхстороннее сравнение (C++20)
(C++20)
(C++20)(C++20)(C++20)(C++20)(C++20)(C++20)
Общие утилиты
Операторы отношения (устарело в C++20)
Целочисленные функции сравнения
(C++20)(C++20)(C++20)  
(C++20)
Операции обмена и типа
(C++14)
(C++11)

(C++11)
(C++11)
(C++17)
Общие лексические типы
(C++11)
(C++17)
(C++17)
(C++17)
(C++17)

Элементарные преобразования строк
(C++17)
(C++17)

Stacktrace
 
Обработка ошибок
Обработка исключений
Сбои обработки исключений
terminate
(до C++17)
(до C++17)
(C++11)(до C++17)
(до C++17)
Коды ошибок
Коды ошибок
Категории исключений
(ТС TM)
Утверждения
Средства system_error
(C++11)
(C++11)
 
Определено в заголовочном файле <exception>
[[noreturn]] void terminate();

std::terminate() вызывается средой выполнения C++ при неудавшейся обработке исключений в любой из следующих причин:

1)
исключение было брошено но не поймано (реализацией определяется раскручивается ли стек в данном случае)
Оригинал:
{{{2}}}
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
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.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
3)
конструктор или деструктор статического или потока локального объекта создается исключение
Оригинал:
the constructor or the destructor of a static or thread-local object throws an exception
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
4)
Функция зарегистрировано std::atexit или std::at_quick_exit вызывает исключение
Оригинал:
a function registered with std::atexit or std::at_quick_exit throws an exception
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
5)
noexcept спецификации нарушается (это определяется реализацией ли стек разматывания сделано в данном случае)
Оригинал:
a noexcept спецификации is violated (it is implementation-defined whether any stack unwinding is done in this case)
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
6)
динамическая спецификация исключений нарушается, и обработчик по умолчанию для std::unexpected выполняется
Оригинал:
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
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.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
8)
std::nested_exception::rethrow_nested вызывается для объекта, который не держит захваченных исключение
Оригинал:
std::nested_exception::rethrow_nested is called for an object that isn't holding a captured exception
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
9)
исключение из начальной функцией std::thread
Оригинал:
an exception is thrown from the initial function of std::thread
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
10)
объединяемые std::thread уничтожены или назначены
Оригинал:
a joinable std::thread is destroyed or assigned to
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
std::terminate() также может быть вызвана непосредственно из программы.
Оригинал:
std::terminate() may also be called directly from the program.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.


В любом случае, 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.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.


Содержание

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

(Нет)

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

(Нет)

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

спецификация noexcept:  
noexcept
  

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

тип функции, вызываемой из std::terminate
(определение типа) [править]
X Tutup