Bonjour

Ma question porte sur les méthodes de destruction d'objets.

Si j'écris ceci par pur exemple :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
using (var br  = new SolidBrush(macouleur))
{
     gfx.FillRectangle(br, x, y, larg, haut);
}
br est détruit explicitement en fin de la zone "using".
C'est donc comme si j'écrivais ceci

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
var br  = new SolidBrush(macouleur);
gfx.FillRectangle(br, x, y, larg, haut) ;
br.Dispose();
Mais est-ce équivalent ou non, du point de vue de la durée de vie de la SolidBrush, à ceci ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
gfx.FillRectangle (new SolidBrush(macouleur),x,y,larg,haut);
Bref, "Dispose()" est-il appelé également automatiquement dès la méthode FillRectangle exécutée?

Evidemment, je prends ça comme pur exemple, la même question se pose pour tout ce qui est créé avec new dans les paramètres d'une méthode.

Merci d'avance

Claude