7
@throw NSException
和NSException raise
有什麼區別?我想知道哪一個我應該使用(有一個正確的用例來使用它),爲什麼?@throw NSException vs NSException raise
@throw NSException
和NSException raise
有什麼區別?我想知道哪一個我應該使用(有一個正確的用例來使用它),爲什麼?@throw NSException vs NSException raise
從蘋果文檔,
@throw
和raise
之間的一個重要區別是,後者可以僅被髮送到一個NSException object
而@throw
可以採取其他類型的對象作爲其參數(例如字符串對象)。可可應用程序應該@throw只有NSException objects
。通常,您會在異常處理域內引發或引發異常,該異常處理域是由@try編譯器指令標記的代碼塊。
有關詳細信息,請參閱「Handling Exceptions」。
在異常處理域中,您可以將本地異常處理程序捕獲的異常重新傳播給更高級別的處理程序,可以通過向NSException對象發送另一個引發消息或通過將其與另一個@throw指令一起使用。
有關更多詳細信息,請參閱documentation。