如果在对方法的调用中创建了画笔,则会将其处理掉

fis*_*ead 1 c# visual-studio-2008 .net-2.0

下面是我的paint方法中的代码片段.当我以这种方式创建一个像刷子这样的物体时,我不确定它叫什么,但是它是否会被处理得更少,或者我是否需要关注它?

g.DrawString("12", _ContentFont, new SolidBrush(Color.Black), new PointF(25, 25));
Run Code Online (Sandbox Code Playgroud)

Dan*_*röm 6

不,它不会.试试这个:

using ( var brush = new SolidBrush(Color.Black) )
  g.DrawString("12", _ContentFont, brush, new PointF(25, 25));
Run Code Online (Sandbox Code Playgroud)

但是当谈到黑色时,更好的是:

  g.DrawString("12", _ContentFont, Brushes.Black, new PointF(25, 25));
Run Code Online (Sandbox Code Playgroud)