【问题标题】:what does '~' mean/do in visual studio C# [duplicate]'〜'在Visual Studio C#中是什么意思/做什么[重复]
【发布时间】:2013-05-08 19:35:25
【问题描述】:

在网上浏览一些代码时,我遇到了以下情况:

~Disposable()
{
   Dispose(false);
}

这不会产生任何编译器错误,'~' 是不是特别做了什么或者为什么会在那里?

【问题讨论】:

  • @ManishMishra 这不是析构函数,他们确保不要将其称为析构函数,因为它与 C++ 非常、非常不同。
  • 对不起,如果它是重复的,但我发誓谷歌在搜索时没有返回任何内容。
  • @SOfanatic:很难搜索到 '~' ;-)
  • @DanielHilgarth 这是 MSDN 上的一个错误。 ECMA-334 §17.12 在顶部包括以下注释:“注意:在本标准的先前版本中,现在称为“终结器”的东西称为“析构函数”。经验表明,术语“析构函数”造成混乱并经常导致错误的期望,尤其是对了解 C++ 的程序员而言..."

标签: c# asp.net-mvc visual-studio-2010


【解决方案1】:

这在 C# 中称为finalizer。它的作用是使用类似于析构函数的语法覆盖Finalize 方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-12
    • 2014-03-23
    • 2017-10-16
    • 2017-02-17
    • 1970-01-01
    • 2011-12-11
    • 2011-12-27
    相关资源
    最近更新 更多