1. ホーム
  2. ios

Xcode 8 : function types cannot have argument label breaking my build.

2023-10-12 06:58:04

質問

何らかの理由で、Swiftは補完ハンドラパラメータのラベルを削除することをユーザーに強制することによって、その中のコーディングをより読みにくくすることを選んだようです。 私はSwiftの議論を読みましたが、それは間違いだとまだ思っています。 少なくとも、彼らはそれをオプションにすることができました。

Xcode 8 を使用してビルドするとき、これらのエラーが発生しないように、コンパイラーが Swift 2.3 を使用するように強制する方法はありますか? 私はレガシー Swift を使用するオプションを更新しました (ビルド設定の下)。 を追加しましたが、まだこのエラーが発生するようです。

関数型は引数ラベル 'isloggedIn' を持つことができません。 を使用してください。

完了ハンドラでラベルを保持するにはどうしたらよいですか?

どのように解決するのですか?

Swiftの設計者は、関数型のための引数ラベルを禁止することを決定しました。

その理由はここで説明されています。 https://github.com/apple/swift-evolution/blob/master/proposals/0111-remove-arg-label-type-significance.md

引数ラベルを禁止することで、クロージャの不正な呼び出しがより簡単になり、言語の型システムの簡略化よりも重要だと思われるからです。

ユーザビリティ >イデオロギーです。