contentイニシャライザについて(Swift)Swiftイニシャライザインスタンスイニシャライザについてイニシャライザは型のインスタンスを初期化するための記法です。全てのストアドプロパティはインスタンス化の完了までに値が代入されていないと、初期化(インスタンス化)できないため、プロパティの宣言時(呼び出し時)に初期値を持たないプロパティは、イニシャライザ内で初期化してプロパティに値を与えることができます。普通のイニシャライザ下記のコードを各型内(クラス、構造体、列挙体)で定義することで、利用できます。イニシャライザはinitキーワードで宣言し、引数と初期化に関する処理を定義します。Ishikawa!上記のサンプルコードがイニシャライザの使用例です。本来定義時に値を代入しておかなければいけないはずのストアドプロパティに値が設定されていません。その代わりinitでイニシャライザを定義することで、インスタンス化時に渡される値をself.toで自身のtoに代入しています。このおかげで実行結果も正しく出力されました。失敗可能なイニシャライザイニシャライザは全てのプロパティを正しい型の値で初期化しますが、インスタンス化時に渡される引数次第では初期化できないケースが発生します。その場合はコンパイルエラーになります。initializer)を使用します。失敗可能イニシャライザはinitに?を加えinit?(引数)という形で定義します。それでは早速実装コードを見てみましょう。"ghi"]からItemを生成できませんでした上記のコードを見ると、失敗可能イニシャライザが定義している内部でguard文が定義されています。ここでは詳しい解説は省きますが、guard文とはfalseの場合に処理を行う文です。そのため、条件のidとtitleがない場合はnilを返します。それ以外のtrueの場合は通常通りselfを用い、自身のidとtitleに引数で指定された値を代入します。その結果、実行結果は3つ目の結果だけidがないためエラー文が出力されます。注意点プロパティの初期化はコンパイラによってチェックされています。そのため、一つでも初期化されていないプロパティがある場合は、型の整合性が取れなくなってしまうためコンパイルエラーとなるので注意が必要です。Shiraishi@Howasutoエンジニア1年目。現在はiOSアプリの開発を行なっています。upLoginユーザーは見つかりませんでした。