Junior — Middle
Dans quel contexte ou dans quelles circonstances la méthode deinit est-elle appelée en Swift?
sobes.tech IA
Réponse de l'IA
La méthode deinit en Swift est appelée automatiquement avant qu'une instance de classe ne soit supprimée de la mémoire. C'est un destructeur qui permet de libérer des ressources, de fermer des fichiers, d'annuler des observateurs et d'effectuer d'autres nettoyages.
deinit est appelé dans les circonstances suivantes :
- Lorsque le compteur de références d'un objet atteint zéro (ARC — gestion automatique de la mémoire).
- Avant que l'objet ne soit désinitialisé et que la mémoire soit libérée.
Exemple d'utilisation de deinit :
class FileHandler {
let fileName: String
init(fileName: String) {
self.fileName = fileName
print("Fichier ouvert : \(fileName)")
}
deinit {
print("Fichier fermé : \(fileName)")
}
}
func exemple() {
let handler = FileHandler(fileName: "data.txt")
// handler est utilisé à l'intérieur de la fonction
} // ici handler sort de la portée, deinit est appelé
Ainsi, deinit est utile pour la gestion des ressources et le nettoyage lors de la destruction d'un objet.