简单的问题。类析构函数和 dispose 有什么区别。假设在我的类中,我有一个 RegistryKey、一个 COM 对象和一些在类对象超出范围时需要处理的东西。我有执行此操作的代码,并且我已将其放在析构函数和 dispose 方法中。在这里使用什么是最好的。
public MyClass : IDisposable
{
public ICOMObject SomeCOMObject;
public RegistryKey registryKey;
MyClass()
{ Initialize things; }
~MyClass()
{
ClearThings();
}
public void Dispose()
{
ClearThings();
}
private void ClearThings()
{
// Clear things.
}
}