La question des références dans une structure

1. Introduction

Une structure peut parfaitement inclure en son sein des champs qui s’avèrent être une référence.

Si on résume les principes qui régissent les références en Rust, telles qu’étudiées dans les chapitres précédents, on peut établir les trois règles suivantes :

  • Règle 1 : une référence ne peut pas « vivre » plus longtemps que l’objet qu’elle pointe. Autrement dit, si l’objet pointé meurt, il faut que la référence qui pointait sur lui meure absolument avant.

  • Règle 2 : une référence en &mut est dite exclusive, c’est-à-dire qu’aucune autre référence ne pourra pointer vers l’objet pointé par la référence exclusive. Autrement dit, l’objet pointé a une et une seule référence pointant vers lui.

  • Règle 2.1 : cette règle est une conséquence de la règle 2. S’il existe au moins une référence & vers un objet, il ne sera pas possible d’y ajouter une référence exclusive &mut (justement car elle est exclusive).

Une conséquence importante est que la durée de vie d’une référence doit nécessairement être moindre que celle de l’objet pointé. Plus exactement...

Pour consulter la suite, découvrez le livre suivant :
couv_EIRUST.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Structure générique
Suivant
Notion de traits appliqués aux structures