Sobes.tech
Назад к вопросам
Junior — Middle
70

Можете привести пример применения Capture List в языке программирования?

Компании, где спрашивали
Uzum

Ответ от нейросети

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 захватывается слабой ссылкой, чтобы избежать удержания объекта и возможной утечки памяти.