Swift-呼び出しエラーでの追加の引数エラー
Swift Extra Argument Error Call Error
Swiftの学習開発で間違いに遭遇しました。
# !extra argument error in call
前
After reviewing the information, we know that we used the `var error : NSError?` method to identify an error. When an error occurs in this method, it assigns an value to the `error` object, and we can get the specific information of the error: var e : NSError? xs!.connectWithTimeout(5000, error: &e)
ちょうど今
Swift 2.0は、エラー処理のセキュリティを強化し、例外メカニズムを導入し、throwsキーワードを使用して、メソッドがエラーをスローする可能性があることを示します。解決策はtry catch
grammarです。
The solution is: do { // This line can be executed smoothly try xs!.connectWithTimeout(5000) // Execution will throw an error } catch let error as NSError{ Print('connection failed(error.domain)') } ## ` NSError` Type conversion with `let`, which is mainly for Cocoa's existing API, is a compromise to history.
正しいtry catch
文法の理解(既知のパートナーは自動的に無視できます)
最初に明確にすることは、試行がない場合、例外によってプログラムがクラッシュすることです。
そしてtryは、プログラムの正常な動作を保証できます。次に例を示します。
試してみてください{
int i = 1/0
} catch(Exception e){
.......。
}
#######計算の場合、除数が0の場合、エラーが報告されます。試行がない場合、プログラムは直接クラッシュします。 tryを使用すると、プログラムを実行させることができ、出力が間違っている理由を知ることができます。