An example for Swift retain cycle
class BankAccount {
var owner: Owner?
init() {
}
}
class Owner {
var account: BankAccount?
init() {
}
}
let bankAccount = BankAccount()
let owner = Owner()
bankAccount.owner = owner
owner.account = bankAccountvar owner: Owner?↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
weak var owner: Owner?lazy var configureCell: (UITableViewCell)->() = { cell in
if let tableViewCell = cell as? TableViewCell {
tableViewCell.title?.text = self.name
}
}lazy var configureCell: (UITableViewCell)->() = { cell in↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
lazy var configureCell: (UITableViewCell)->() = { [unowned self] cell invar delegate: TableViewCellDelegate?var delegate: TableViewCellDelegate?↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
weak var delegate: TableViewCellDelegate?