我讀了迅速節目指南的工作,並在初始化章節中,我碰到這個代碼就來了:非強引用不是在操場
class Customer {
let name: String
var card: CreditCard?
init(name: String) {
self.name = name
}
deinit { println("\(name) is being deinitialized") }
}
class CreditCard {
let number: Int
unowned let customer: Customer
init(number: Int, customer: Customer) {
self.number = number
self.customer = customer
}
deinit { println("Card #\(number) is being deinitialized") }
}
於是,我就嘗試代碼自己,做一些修改看看會發生什麼(讓我更瞭解)
所以我打開操場並開始打字,之後我發現weak
關鍵字和unowned
關鍵字不被操場識別。這隻能意味着操場只支持強參考變量。
那麼,爲什麼遊樂場只支持強烈的參考,你可以做些什麼來防止在遊樂場的強烈參考循環?
你說什麼「弱關鍵字和無主關鍵字不被操場識別」是什麼意思?你對這種說法有什麼檢驗或證據? – matt