Questo sembra che dovrebbe essere semplice, ma ho provato sia
la gestione e l'eccezione try {} catch (...) {}
C++
__try {} __finally {}
eccezioni strutturata gestione (SEH)
e nessuno prenderà l'eccezione che succede quando si Control-C il applicazione.Come catturare l'eccezione Control-C in un'app console di Visual C++?
Non mi aspettavo davvero che la gestione delle eccezioni del C++ facesse questo, dal momento che Control-C è un segnale di sistema e non causato da un C++ throw(), ma l'ho provato comunque quando SEH non funzionava.
Se corro sotto un debugger, mostra che Control-C genera un'eccezione di prima scelta, ma quando viene retrocesso, il mio gestore non viene mai richiamato.
Non è un'eccezione, la sua chiamato un interrupt. –
Doh - interrompe. Errore mio. –
@Daniel Sì, tecnicamente Microsoft dovrebbe chiamarlo Structured INTERRUPT Handling, ma non lo fanno. Po-tay-to Po-tAH-to. –