Sobes.tech
Junior — Middle

Je možné ukladať funkcie uzávier v poliach v programovacích jazykoch?

sobes.tech AI

Odpoveď od AI

Áno, v programovacích jazykoch, ktoré podporujú funkcie ako objekty prvej triedy (napríklad Swift, Objective-C, JavaScript), môžu byť uzávierky (closures) uložené v poliach alebo iných kolekciách.

V iOS (Swift) to vyzerá takto:

let closures: [() -> Void] = [
    { print("Prvá uzávierka") },
    { print("Druhá uzávierka") }
]

closures[0]() // Vytlačí: Prvá uzávierka

Je to užitočné, keď potrebujete uložiť súbor akcií na neskoršie volanie, napríklad správcovia udalostí alebo odložené úlohy. Dôležité je dávať pozor na zachytenie premenných v uzávierkach, aby ste predišli únikom pamäti.