Junior — Middle
Peux-tu donner un exemple de situation où une référence faible est automatiquement mise à zéro?
sobes.tech IA
Réponse de l'IA
La référence faible est automatiquement annulée lorsque l'objet auquel elle fait référence est libéré de la mémoire (c'est-à-dire lorsqu'il n'y a plus de références fortes à celui-ci).
Par exemple, en iOS, en utilisant une référence weak au délégué :
class ViewController: UIViewController {
weak var delegate: SomeDelegate?
}
Si l'objet délégué est détruit (par exemple, sort de la portée et est libéré), alors delegate devient automatiquement nil. Cela empêche d'accéder à un objet déjà libéré et aide à éviter les erreurs et les fuites de mémoire.