第二十四章 自动引用计数
4.2 Unowned Optional Reference (无主可选引用)
我们可以把通向类的可选引用看作无主可选引用。在ARC关系模型中,一个无主可选引用和一个弱引用都可以使用在相同的上下文中。两者之间使用不同之处就在于,当我们在使用无主可选引用的时候,我们就可以确定将要引用的对象是有效或者该对象被设置为nil了。
下面这个例子,就是追踪学校中部门所授予的课程信息。
class Department {
var name: String
var courses: [Course]
init(name: String) {
self.name = name
self.courses = []
}
}
class Course {
var name: String
unowned var department: Department
unowned var nextCourse: Course?
init(name: String