はじめに Swiftで使用されるstructは定義したプロパティにしたがってイニシャライザメソッドが自動生成されます。 例えば下記のようにUserを定義した場合に自動でイニシャライザが生成されます。 struct User { var id: Int var name: String } // init(id: Int, name: String)が自動生成されている let user = User(id: 0, name: "Tanaka") この自動生成処理に関して、Swift5.1で変更があったため記載します。 環境設定 以下の環境を使用しています。 Swift5.1 Swift5.1での変更点 Swift5.1以前では以下のようにstructのプロパティにデフォルトの値を設定していた場合でも、デフォルトの値を考慮したイニシャライザは自動生成されませんでした。 struct User