2015-06-24 3 views
10

Se si utilizza NSSetUncaughtExceptionHandler, gestisce solo errori di runtime oggettivo-C. https://developer.apple.com/library/mac/documentation/Cocoa/Reference/Foundation/Miscellaneous/Foundation_Functions/index.html#//apple_ref/c/func/NSSetUncaughtExceptionHandlerswift - Come gestire l'eccezione non rilevata

NSSetUncaughtExceptionHandler può intercettare l'eccezione:

var a: NSArray = [""] 
println(a[2]) 

Ma NSSetUncaughtExceptionHandler non può intercettare le eccezioni:

var a = [""] 
println(a[2]) 

Come rapido accordo con errori di runtime non Objective-C (errori rapida runtime)? ?

+0

Ho lo stesso problema, sembra che NSSetUncaughtExceptionHandler non funzioni con le eccezioni rapide. –

risposta

-3

È già stata fornita una risposta esaustiva a una domanda simile Error-Handling in Swift-Language. Guarda la prima risposta che include gli ultimi aggiornamenti di Swift 2.0 riguardo questo argomento.

+2

Intendo i gestori di eccezioni Uncaught, piuttosto che 'try catch' – Injoy

+0

@Injoy - hai la soluzione –

+0

Questo non risponde alla domanda. La domanda collegata riguarda gli errori a livello di utente, questa domanda riguarda l'acquisizione e la gestione degli errori fatali. La mia ricerca sull'argomento indica che attualmente non esiste un modo equivalente per rilevare errori fatali. – Fizker