let
で定義する 3. O オプショナル型は nil
を代入できる。 「許容する」ってどういう意味だろう?フォーマルな言葉ではなさそう。 4. 問題作成者の意図予想 O: T?
という型は Optional<T>
を意味するので、オプショナル型となる 4(2). 僕の解釈 X: 問題作成者はおそらく関数型についての考慮を忘れている。 var a: () -> Int
という宣言で「最後に「?」をつける」と var a: () -> Int?
となるが、 これはオプショナル型ではなくオプショナルを返す関数型にすぎない 5. 問題作成者の意図予想 X a
が nil
のときアンラップするとクラッシュする。 クラッシュするけどアンラップする事自体はできているので微妙な言い回し。 「アンラップに成功する」なら明確だけど。