C# 中可使用 using 关键字自动清除对象资源。
MyObject.cs
using System;
namespace MyProjects
{
public class MyObject : IDisposable
{
public MyObject()
{
}
public void Dispose ( )
{
// Dispose
Console.WriteLine ( "Disposed" ) ;
// ...
}
}
}
Class1.cs
using System;
namespace MyProjects
{
public class Class1
{
public Class1()
{
}
public static void Main ( string [] args )
{
using ( MyObject myObject = new MyObject ( ) )
{
Console.WriteLine ( "quit" ) ;
}
}
}
}
使用 using 会自动调用 MyObject 的 Dispose 方法 .
如果 MyObject 未实现 IDispose 接口 , 则编译时会出错 : 无法将类型“ MyProjects. MyObject ”隐式转换为“ System.IDisposable ”
这种写法可替代
try
{ //... }
catch
{ }
finnaly
{ MyObject.Dispose ( ) ; }