11月17日(月)3 コマ目

今日、やったこと

  • [練習問題]練習問題5(構造体)
  • [練習問題 解説]練習問題5(構造体)
  • エクステンション

今日のホワイトボード

[練習問題 解説]練習問題5(構造体)

構造体の練習というより、nilとOptional型の復習。

正解例をあげておきます。

5-1

構造体を作って、配列を作るだけ。


5-2

nilか否かは != nil でできる。

ついつい、オプショナルバインディングとかを思い浮かべるが、そこまでしなくていい。


5-3

C言語由来の言語では、計算する2つの値の型が異なる場合、大きな型(double > int)に自動的にキャストされる。

Swiftでは、両方ともキャストが必要。


エクステンション

クラスは継承で機能追加ができる。

継承が使えるのは、クラスだけ。

構造体、列挙型、プロトコル(=インターフェース)はエクステンションで機能追加。

図 継承とエクステンションのイメージ


コンピューテッドプロパティの省略記法

メソッドにあった、

処理内容が値を返すだけなら、returnが省略できる

に加えて、

コンピューテッドプロパティはget処理だけなら、get{ }が省略できる

もある。

図 コンピューテッドプロパティの省略記法


以下のサンプルで確認しました。


実行結果




次回は

エクステンションの練習問題。 

このブログの人気の投稿

11月25日(火)3、4コマ目