Junior — Middle
Peut-on déclarer une fermeture en tant qu'attribut de classe?
sobes.tech IA
Réponse de l'IA
Oui, en iOS (Swift ou Objective-C), il est possible de déclarer des closures en tant qu'attributs (propriétés) d'une classe. Cela est souvent utilisé pour passer des callbacks ou gérer des événements.
Par exemple, en Swift :
class MyClass {
var completionHandler: (() -> Void)?
func doSomething() {
// Effectuer une tâche
// ...
// Appeler la closure si elle est définie
completionHandler?()
}
}
let obj = MyClass()
obj.completionHandler = {
print("Tâche terminée")
}
obj.doSomething()
Cette approche permet de configurer de manière flexible le comportement de la classe depuis l'extérieur, en passant la logique via des closures.