2011-08-16 50 views
14

我們正在編寫靜態庫。我們爲暴露的API做了異常處理。但仍有少量未處理的異常(或OS異常)。你可以讓我知道如何捕捉這些未處理的異常。 感謝iOS +如何捕捉未處理的異常

回答

3

簡單 -

 @try 
     { 
      //your code 
     } 
     @catch (NSException *theException) 
     { 
      NSLog(@"Exception: %@", theException); 
     } 

快樂編碼...

+1

有沒有辦法捕捉到低級別的異常類的系統異常/內存溢出異常/硬件異常? – macdev30

12

嗯,你總是可以依靠Catch'em All Principle

對於這樣的問題,我總是用下面的代碼:

@try { 
    // do something 
} 
@catch (NSException *exception) { 
    // error happened! do something about the error state 
} 
@finally { 
    // do something to keep the program still running properly 
} 
+1

是的,在try/catch塊中,我們可以捕獲該函數中發生的任何異常,或捕獲從此API調用的函數拋出的異常。 – macdev30

+0

有了這個聲明**每個**異常都會被捕獲。 –