Avatar
Avatar
tarunon
これは結構私は方々でぶーを垂れてるので知ってるかもですが、 TがT?のサブタイプである UがTのサブタイプであるならばU?はT?のサブタイプである この2点がSwiftでは許可されています。で、下のコードはコンパイルが通る。 var s = Cat() var a: Animal = s // CatとAnimalのサブタイプ関係が成り立つことを示す var b: Cat? = s var c: Animal? = b U?はT?のサブタイプ、は具体のコードとしては、 UITableViewController? な変数が UIViewController? に渡せる、というのが頻出すると思います。 (edited)
ここ UIView? の間違い?
12:23 PM
暗黙の型変換だと、変換元の型から変換先への型への妥当な変換方法が複数存在した場合に、どちらを選択しているのかがわからず、場合によってはその違いによって振る舞いが変わるケースが出てくる、ということだなあ
12:24 PM
暗黙の型変換が無ければ陽に記述されるから曖昧性はないし、一貫して区別できない同じものとみなすアプローチでも曖昧性は無いと・・・