一个强引用,一个弱引用。
析构函数的关键词是deinit
通过给对象赋nil的方式来断开强引用
class CSDN{
var name:String;
init(csdnName:String){
self.name = csdnName
}
deinit{
println("内存将要被释放")
}
}
var instance1 = CSDN(csdnName:"hello hwc") //引用计数为1
var instance2 = instance1//引用计数为2
weak var instance3 = instance2//引用计数为2
instance1 = nil //引用计数为1
instance2 = nil //引用计数为0,内存被释放,输出“内存将要被释放”
//println(instance3.name)这样调用是不对的,因为内存已经被释放了原文地址:http://blog.csdn.net/hello_hwc/article/details/41359687