Ho il seguente codice tratto da cplusplus.com:funzione set_terminate non funziona per me
// set_terminate example
#include <iostream>
#include <exception>
#include <cstdlib>
using namespace std;
void myterminate() {
cout << "terminate handler called\n";
abort(); // forces abnormal termination
}
int main (void) {
set_terminate (myterminate);
throw 0; // unhandled exception: calls terminate handler
return 0;
}
Poiché non v'è un'eccezione non gestita nel codice, ha bisogno di chiamare la funzione myterminate(), che viene impostata come terminare conduttore e supposto per ignorare il gestore terminato predefinito.
Il programma si arresta in modo anomalo ma non chiama myterminate(). Sto usando Visual C++ 2008 Express Edition.
Qual è il problema con il codice?
Sì. Avvia il programma con Ctrl + F5. –
Si tratta di un bug nel debugger? – bjskishore123
@ bjskishore123: No, questa è una caratteristica :) –