Namespaces
Variants

std::quick_exit

De es.cppreference.net
 
 
Biblioteca de utilidades
Soporte del lenguaje
Soporte de tipos (tipos básicos, RTTI)
Macros de prueba de características de la biblioteca (C++20)
Utilidades del programa
Funciones variádicas
Soporte de corrutinas (C++20)
Soporte de contratos (C++26)
Comparación a tres vías
(C++20)
(C++20)(C++20)(C++20)    
(C++20)(C++20)(C++20)

Utilidades generales
Operadores relacionales (obsoleto en C++20)
 
 
Definido en el encabezado <cstdlib>
[[noreturn]] void quick_exit( int exit_code ) noexcept;
(desde C++11)

Provoca la terminación normal del programa sin limpiar completamente los recursos.

Las funciones pasadas a std::at_quick_exit son llamadas en orden inverso al de su registro. Si una excepción intenta propagarse fuera de alguna de las funciones, se llama a std::terminate. Después de llamar a las funciones registradas, llama a std::_Exit(exit_code).

Las funciones pasadas a std::atexit no son llamadas.

Parámetros

exit_code - estado de salida del programa

Ejemplo

#include <cstdlib>
#include <iostream>
template<int N>
void quick_exit_handler()
{
    std::cout << "quick_exit handler #" << N << std::endl; // flush is intended
}
void at_exit_handler()
{
    std::cout << "at_exit handler\n";
}
int main()
{
    if (std::at_quick_exit(quick_exit_handler<1>) ||
        std::at_quick_exit(quick_exit_handler<2>))
    {
        std::cerr << "Registration failed\n";
        return EXIT_FAILURE;
    }
    std::atexit(at_exit_handler); // the handler will not be called
    struct R { ~R() { std::cout << "destructor\n"; } } resource;
    /*...*/
    std::quick_exit(EXIT_SUCCESS);
    std::cout << "This statement is unreachable...\n";
}

Salida:

quick_exit handler #2
quick_exit handler #1

Véase también

provoca la terminación anormal del programa (sin limpieza)
(función)
provoca la terminación normal del programa con limpieza
(función)
registra una función para ser llamada en la invocación de std::exit()
(función)
registra una función para ser llamada en la invocación de std::quick_exit
(función)
Documentación C para quick_exit