Back to questions
Junior — Middle
71
Можете привести пример применения Capture List в языке программирования?
Companies where asked
Uzum
Answer from AI
sobes.tech AI
В языке Swift Capture List используется в замыканиях (closures) для управления захватом переменных из внешнего контекста. Это особенно важно для предотвращения циклов сильных ссылок (retain cycles) при работе с классами.
Пример:
class ViewController {
var name = "Main"
func setupClosure() {
let closure = { [weak self] in
guard let self = self else { return }
print("Hello, \(self.name)!")
}
closure()
}
}
Здесь [weak self] в Capture List указывает, что self захватывается слабой ссылкой, чтобы избежать удержания объекта и возможной утечки памяти.