読者です 読者をやめる 読者になる 読者になる

"まだ"の力 [基礎辞書]

学んだことを書いていきます。質問やエラーなどございましたらお気軽にコメントお願いします。

初心者、基礎を積み上げる「get set(ゲッタ、セッタ)」

get set

計算型(Computed)プロパティ

!値を保持せずに他のプロパティの値からその都度計算して結果を返したり、設定したりするプロパティ。

!公式


var 名前:型 {
get{
    プロパティの値を返すコード
    }
set(仮引数) {
    プロパティの値を更新するコード
    }
}

それぞれの部分をget(ゲッタ)節、set(セッタ)節という。
また、set節は省略可能。
ゲッタセッタを使ってbitをbyteに変換するプログラムを組んでみた!(8bit = 1byte)bit(ビット)わからない人はこちらhttp://blog.hatena.ne.jp/kichie_com/kichie-com.hatenablog.com/edit?entry=6653586347148643701#preview

struct Byte {
    var byte:Double = 0.0
    let byterate = 0.125    //1割る8が0.125
    init(bit:Double) {        
        self.bit = bit
    }
    var bit: Double {
        get {
            return  byte * byterate  //変数bitに返す値
        }
        set {
            byte = newValue / byterate  //更新する値
            }     //よく理解できない場合は他のサイトのサンプルも見てじっくりにらめっこするといいと思います。
        
    }
}
var byte1 = Byte(bit:1)
print("\(byte1.byte)")  // 8 と出力
print("\(byte1.bit)")  // 1と出力

initがわからなかったら。
こちら

ここまでのまとめ3つ

  1. 計算型(Computed)プロパティはプロパティの値からその都度計算して結果を返したり、設定したりするプロパティ
  2. getは値を返し(ゲットし)、setは値を(セット)更新する。
  3. setは省略可能



参考サイト:http://tea-leaves.jp/swift/content/プロパティ

参考書籍: