【发布时间】:2016-04-21 06:47:30
【问题描述】:
我正在阅读 C# 规范,但我不明白这一点:
析构函数是实现所需操作的成员 销毁一个类的实例。
当一个对象开始符合销毁条件时,它是否执行销毁对象的操作?
一般来说,我们在析构函数中放入释放非托管的语句 资源,所以我真的不明白我们如何才能使用破坏对象本身的语句!
也许我误解了它的意思?
【问题讨论】:
-
在
C#中通常将它们称为Finalizers以避免混淆。相关:stackoverflow.com/a/4899622/1870760 -
销毁!= 销毁。
-
@CodeCaster,“析构函数、处置和终结方法之间的区别”的答案没有回答我的问题!我的问题不是关于那个区别,而是关于析构函数做什么的 C# 解释。我不认为我的问题是重复的。
-
“析构函数做什么的解释” - 这在副本中得到了很好的解释。您的困惑来自于认为“破坏”(与构造相反)意味着“破坏”(从记忆中抹去),但事实并非如此。
标签: c#