[swift] 18. 참조, Retain Cycle

Retain Cycle 

weak keyword

unowned

클로저에서의 강한 순환 참조 해결

lazy var someClosure: (Int, String) -> String = {
    [unowned self, weak delegate = self.delegate!] (index: Int, stringToProcess: String) -> String in
    // closure body goes here
}


// 추론에 의한 생략 시
lazy var someClosure: () -> String = {
    [unowned self, weak delegate = self.delegate!] in
    // closure body goes here
}