swiftの計算プロパティとストレージプロパティ

1918 ワード

1、記憶属性:定数または変数を記憶する
///  
    let aaa = "aaa"  ///  
    ///   ⚠️ oc 
    lazy var ccc: [TestModel] = {
       
        let testModle = TestModel()
        var arr = [TestModel]()
        for _ in 0...99 {
            
            arr.append(testModle)
        }
        return arr
    }()
    
    var num: Int = 100```


2、 :  , get/set . 
get:  ,  
set:  ,  

////計算型属性(set、getメソッドを書き換えるいくつかの属性に相当し、set、getメソッドに対応する計算がある)var ddd:Int
    ///  , set get 
    
    get {
        return num + 11
    }
    
    set(d){
        
        num = num + d
    }
}

////ViewController.swift//計算型属性と記憶型属性//////Created by Admin on 16/12/29//Copyright © 2016年劉普昌All rights reserved.//
import UIKit
////グローバルに相当(すべてのクラスで使用され、グローバルのクラスに一緒に配置できます)
class ViewController: UIViewController {
///  
let aaa = "aaa"  ///  
///   ⚠️ oc 
lazy var ccc: [TestModel] = {
   
    let testModle = TestModel()
    var arr = [TestModel]()
    for _ in 0...99 {
        
        arr.append(testModle)
    }
    return arr
}()

var num: Int = 100

///  ( set、get  , set、get )
var ddd: Int{
    
    ///  , set get 
    
    get {
        return num + 11
    }
    
    set(d){
        
        num = num + d
    }
}


override func viewDidLoad() {
    super.viewDidLoad()
    
    
    ///  
    let bbb = "bbb"
    print(bbb)
    
    
    self.ddd = 5  // num = 100 + 5
    print(self.ddd) /// result :100 + 5 + 11 = 116  word  
    
    print(aaa)
    // Do any additional setup after loading the view, typically from a nib.
}

func test() -> () {
    print(aaa)
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

}

 : http://blog.csdn.net/xn4545945/article/details/39311027