//
// ViewController.swift
import UIKit
class ViewController: UIViewController {
/*
在Swift中,如果在某个类中定义一个属性,那么这个属性必须要初始化,否则会报错
如果想暂时不初始化,那么可以在后面写上一个?号
*/
// 定义属性
var finished:(()->())?
override func viewDidLoad() {
super.viewDidLoad()
// OC中解决方案: __weak typeof(self) weakSelf = self
weak var weakSelf = self
loadData {
print("回到主线程")
// 在Swift开发中,一般不写sel,但是在闭包中必须写上self
// 所以看到self基本上都和闭包有关系
weakSelf!.view.backgroundColor = UIColor.redColor()
}
}
func loadData(finished:()->()){
print("执行耗时操作")
self.finished = finished
finished()
}
// 析构函数,相当于OC的dealloc
deinit{
print("死了")
}
}