Junior — Middle
É possível guardar funções de encerramento dentro de arrays em linguagens de programação?
sobes.tech IA
Resposta da IA
Sim, em linguagens de programação que suportam funções como objetos de primeira classe (por exemplo, Swift, Objective-C, JavaScript), as funções anônimas podem ser armazenadas dentro de arrays ou outras coleções.
No iOS (Swift), isso parece assim:
let closures: [() -> Void] = [
{ print("Primeira closure") },
{ print("Segunda closure") }
]
closures[0]() // Vai imprimir: Primeira closure
Isso é útil quando você precisa armazenar um conjunto de ações para chamá-las posteriormente, por exemplo, manipuladores de eventos ou tarefas adiadas. O principal é cuidar da captura de variáveis dentro das closures para evitar vazamentos de memória.