【发布时间】:2010-11-07 19:08:49
【问题描述】:
类中的析构函数和 Finalize 方法之间有什么区别(如果有的话)?
我最近发现 Visual Studio 2008 将析构函数视为 Finalize 方法的同义词,这意味着 Visual Studio 不允许您在一个类中同时定义这两种方法。
例如下面的代码片段:
class TestFinalize
{
~TestFinalize()
{
Finalize();
}
public bool Finalize()
{
return true;
}
}
在析构函数中调用 Finalize 时出现以下错误:
以下方法或属性之间的调用不明确: 'TestFinalize.~TestFinalize()'和'TestFinalize.Finalize()'
如果对 Finalize 的调用被注释掉,则会出现以下错误:
类型“ManagementConcepts.Service.TestFinalize”已经定义了一个名为 'Finalize' 使用相同的参数类型
【问题讨论】:
标签: c# destructor finalize