RT:
在做一个飞机大战的类的小游戏,实现游戏结束的功能。
有一个玩家类:Player
Player类有其中一个属性是用来存储玩家飞机的血量:Hp
Player类还有一个方法Draw通过GDI+的方式,将其绘制界面上:
public void Draw(Graphics g)
{
g.DrawImage(PlayerImage, new Point(x, y));
}
在逻辑业务类中对其进行了实例化: Player pl = new Player ();
并且调用了Player类的Draw方法。
判断当玩家血量小于0时,游戏结束,但是问题出现了。
游戏结束的实现方式是界面停止执行Player类的Draw方法
这是时候界面上虽然游戏结束了,但是Player类的实例pl却并没有结束。
我想问就是怎么删除类的实例。
让Player类继承IDispose接口, 想销毁对象时,主动调用实例的Dispose()
pl=null;
g.DrawImage(PlayerImage, new Point(x, y));
把这个的图片给换了,换个空白的,然后pl=null;
:)
手动垃圾回收
求个例子
pl=Null;+1