2017-11-20 Swift - ダウンキャスト(as, as!, as?) ほんとはオプショナル型の〜とか説明が必要なのだけど as アップキャストなど確定的なキャストに使用。 as! 強制キャスト。C++でいうところのreinterpret_cast。 強制キャストなので実行時エラーを起こす可能性がある。 as? C++でいうところのdynamic_cast。 キャストに失敗した場合はnilを返す。 とりあえずざっくりとC++プログラマ向けの対比。