日期:2014-05-19  浏览次数:20778 次

如何注定释放变量
自定义普通类
public   class   WM_Sp
{
      public   WM_Sp()
    {}
      ~WM_Sp()
    {
          ...........
    }
}

WM_Sp   p   =   new   WM_Sp();
p.do();
在实行完后,如何主动delelet   p,

------解决方案--------------------
可以继承IDisposable接口,然后实现其Dispose方法.

在使用上可以使用using来自动释放变量:

using (WM_Sp p = new WM_Sp())
{
p.do();
}

------解决方案--------------------
Dispose一般用来释放非托管资源,如果你没有使用非托管资源,你什么都不需要做
让GC自动回收托管资源即可~
------解决方案--------------------
你应该使用显式继承,而你却是隐式的,改成如下:
void System.IDisposable.Dispose()
{
// TODO: 添加 WCopy.System.IDisposable.Dispose 实现
}
--------->
public void Dispose()
{
// TODO: 添加 WCopy.System.IDisposable.Dispose 实现
}