Поделиться через


set_terminate (CRT)

Задает собственную вызываемую подпрограмму завершения by terminate.

terminate_function set_terminate(
   terminate_function termFunction
);

Параметры

  • termFunction
    Указатель на функцию завершается, записи.

Возвращаемое значение

Возвращает указатель на предыдущую функции зарегистрированной by set_terminate таким образом, что функция previous могут быть восстановлены позже.Если функция previous не задана, то возвращаемое значение может использоваться для получения таких данных по умолчанию применяются расширения функциональности; это значение может быть равно null.

Заметки

set_terminate функция устанавливает termFunction функция, вызываемая by terminate.set_terminate используется с обработкой исключений C++ и может быть вызван в любой точке в программе, прежде чем исключение.terminate вызовы abort по умолчанию.Можно изменить это значение по умолчанию, написать собственную функцию завершения и вызвать set_terminate имя функции в качестве аргумента.terminate вызывает функция last при наличии в качестве аргумента set_terminate.Выберите выполнять все необходимые задачи очистки termFunction выйти из программы.Если она не будет (если оно вернется к своему, вызвавшему) abort вызывает.

В многопоточной среде выполните функции обслуживание отдельно для каждого потока.Каждому новому потоку требуется устанавливать его завершит функция.Таким образом, каждый поток в попечении собственный обработки прерывания.

terminate_function тип определен в EH.H как указатель к определяемой пользователем функции завершения, termFunction были возвращает void.Пользовательская функция termFunction не может принимать аргументы и должен возвращать в вызывающий объект.Если это так, abort вызывает.Исключение может вызываться из termFunction.

typedef void ( *terminate_function )( );
ПримечаниеПримечание

set_terminate функция работает только вне отладчика.

Одно set_terminate обработчик для всех динамически связанные библиотеки DLL или Exe; даже если вызвать set_terminate обработчик может быть заменен другим или можно заменить обработчик другими DLL или EXE.

Эта функция не поддерживается вниз /clr:pure.

Требования

Процедура

Обязательный заголовок

set_terminate

<eh.h>

Дополнительные сведения о совместимости см. Совместимость во введении.

Пример

См. пример завершение.

Эквивалент в .NET Framework

Неприменимо. Для c# используйте стандартная функция PInvoke. Дополнительные сведения см. в разделе Примеры вызовов неуправляемого кода.

См. также

Ссылки

Подпрограмм обработки ошибок

abort

_get_terminate

set_unexpected (CRT)

terminate (CRT)

unexpected (CRT)