Contrairement à ce qui est indiqué dans cette doc, setter un objet à Null ne revient pas au même que le libérer explicitement.
En cas de référence cyclique, mettre un objet à Null ne va pas appeler le Dtor, contrairement à "libérer" qui va forcer cet appel. Attention néanmoins la mémoire n'est pas automatiquement libérée pour autant (les cas sont nombreux, je ne vais pas les lister).
Autre différence, toujours avec deux objets qui ont chacun une réf sur l'autre: si je libère l'objet A, la réf vers A que possède B va être à Null automatiquement et l'objet A n'est donc plus disponible (sans que la mémoire ne soit forcément libérée en fonction des cas). Si je sette simplement mon objet A à Null, la réf vers A que possède B sera toujours valable et permet d'accéder à l'objet A. |