14.4 Swift中weak引用 访问可选类型的时候,用隐式解包
2016-12-22 11:20
344 查看
/**
14.4-weak引用.mp4
*/
/**
(4)weak引用(弱引用)
*/
class Ref {
deinit {
print("Ref deinit!")
}
func test() ->
Void {
print("test")
}
}
/**
跟弱引用对应的就是强引用。
*/
var strongRef =
Ref.init()
// 引用计数retainCount 1
var strongRef1 = strongRef
// 引用计数retainCount 2
// 这就是弱引用,weak引用是非常安全的引用方式
weak
var weakRef = Ref.init()
// 后面会自动置nil
// 弱引用,是一个可选类型。
weak
var weakRef1: Ref? =
Ref.init()
// 不建议这样子直接解包
// fatal error: unexpectedly found nil while unwrapping an Optional value
// weakRef1!.test()
// 访问可选类型的时候用隐式解包,
if
let wr = weakRef1 {
// wr存在,才用它
wr.test()
}
/**
我可以告诉大家的是,在Swift中我们平时用不着 weak关键字。
但是在某些场合下我们会使用它,会在接下来的课程讲解。
*/
14.4-weak引用.mp4
*/
/**
(4)weak引用(弱引用)
*/
class Ref {
deinit {
print("Ref deinit!")
}
func test() ->
Void {
print("test")
}
}
/**
跟弱引用对应的就是强引用。
*/
var strongRef =
Ref.init()
// 引用计数retainCount 1
var strongRef1 = strongRef
// 引用计数retainCount 2
// 这就是弱引用,weak引用是非常安全的引用方式
weak
var weakRef = Ref.init()
// 后面会自动置nil
// 弱引用,是一个可选类型。
weak
var weakRef1: Ref? =
Ref.init()
// 不建议这样子直接解包
// fatal error: unexpectedly found nil while unwrapping an Optional value
// weakRef1!.test()
// 访问可选类型的时候用隐式解包,
if
let wr = weakRef1 {
// wr存在,才用它
wr.test()
}
/**
我可以告诉大家的是,在Swift中我们平时用不着 weak关键字。
但是在某些场合下我们会使用它,会在接下来的课程讲解。
*/
相关文章推荐
- swift自学笔记(七)(可选类型、隐式解包、可选绑定)
- swift 学习计划(一) 解包、隐式解包的可选类型
- Swift中可选类型隐式解包判断空会报错
- swift中的可选类型Optional?、解包!和隐式解包的可选类型的用法
- Swift-可选类型(Optional)以及解包
- swift 学习计划(一)解包、隐式解包的可选变量
- Swift中的可选类型?和隐式可选类型!的深入理解
- 猫猫学swift3.1(二)可选类型_解包_可选链
- 什么时候使用值类型?什么时候使用引用类型?
- 引用类型,隐式转换列表,三元操作符
- 初探swift语言的学习笔记二(可选类型?和隐式可选类型!)
- 在编写wpf界面时候中出现如下错误: 类型引用不明确。至少有两个名称空间(“System.Windows”和“System.Windows”)中已出现名为“VisualStateManager”的类型。请考虑调整程序集 XmlnsDefinition 特性。
- 访问可能未定义的data (通过static类型flash.net:FileReference引用)
- [Swift]可选链和ARC引用计数
- 在使用Linq to SQL并序列化一个数据对象的时候报System.InvalidOperationException异常,序列化类型XXX的对象时检测到循环引用。
- Swift基础语法: 23 - Swift的Trailing闭包, 捕获, 闭包是引用类型
- Swift基础语法: 31 - Swift的初始化, 默认属性值, 初始化参数, 内部和外部参数, 可选属性类型
- JAVA 对象定义、访问对象、基本类型和引用类型变量区别
- 值类型和引用类型讲解,本人在大学时候的笔记,写给新手
- swift可选类型