if let a = myFunc() {成功したらやること} else {失敗したらやること}
なお、myFunc()は、成功時は値を返して、失敗時はnil(NULLのこと)を返すように実装する。 これで、通常動作と失敗時の動作が両方書ける。なお、失敗時はaにはnilが入る。
if guard let a = myFunc() else {中断; returnとかexit(-1)とか}
成功時は処理を続けるが、失敗したら処理が続けることができない時の実装形式。 myFunc()は、成功時は値を返して、失敗時はnil(NULLのこと)を返すように実装する。 aには値しか入らない。nilが入ることはなく、失敗時は次の処理ができない。
失敗と成功の処理をしっかり書きなさいというルールです。 なお、if let a = の方は、aがnilかもしれないので、aの値を普通に使おうとすると、 nilを考えてないぜ! っというビルドエラーになる。