Junior — Middle
Can you provide an example of using Capture List in a programming language?
sobes.tech AI
Answer from AI
Capture List in Swift is used in closures to manage how variables from the outer scope are captured. It is especially important for avoiding strong reference cycles when working with classes.
Example:
class ViewController {
var name = "Main"
func setupClosure() {
let closure = { [weak self] in
guard let self = self else { return }
print("Hello, \(self.name)!")
}
closure()
}
}
Here, [weak self] in the Capture List indicates that self is captured weakly to prevent retain cycles and potential memory leaks.