Junior — Middle
Quelles étapes doivent être suivies pour utiliser l'attribut @escaping avec une fermeture dans la définition d'une fonction?
sobes.tech IA
Réponse de l'IA
En Swift, l'attribut @escaping est utilisé pour les fermetures qui sont stockées et appelées après la fin de la fonction dans laquelle elles sont passées. Pour utiliser @escaping, il faut :
- Dans la déclaration de la fonction, avant le paramètre de fermeture, indiquer
@escaping. - Cela signifie que la fermeture peut être appelée plus tard, par exemple de manière asynchrone.
Exemple :
func fetchData(completion: @escaping () -> Void) {
DispatchQueue.global().async {
// Exécuter une tâche asynchrone
completion() // appeler la fermeture plus tard
}
}
Sans @escaping, le compilateur ne permettra pas de sauvegarder la fermeture pour l'appeler après la sortie de la fonction.