これにより、UIUserNotificationType の配列が UIUserNotificationType の変数に割り当てられます。これはうまくいかないはずです:
1)
var userNotificationTypes: UIUserNotificationType = [UIUserNotificationType.Alert, UIUserNotificationType.Badge, UIUserNotificationType.Sound]
print(userNotificationTypes.dynamicType) // UIUserNotificationType
[UIUserNotificationType] のタイプは次のとおりです。
2)
let intermidiate = [UIUserNotificationType.Alert, UIUserNotificationType.Badge, UIUserNotificationType.Sound]
print(intermidiate.dynamicType) // Array<UIUserNotificationType>
割り当てようとすると、期待どおりに失敗します。
3)
userNotificationTypes = intermidiate // Cannot assign a value of type '[UIUserNotificationType]' to a value of type 'UIUserNotificationType'
に割り当てようとして[UIUserNotificationType]
もUIUserNotificationType
明らかに機能しないのに、なぜ1)
コンパイルするのでしょうか?