我们在Delphi中创建的每个类都需要具有析构函数吗?
当我在Delphi应用程序中创建自定义类时,我使用标准过程:
TCustomClass = Class
private
var1,var2 : integer/string/Real/Boolean...
procedure P1...
function F1...
public
constructor Create;
end;
...
CustomClass := TCustomClass.create;
我想知道我是否还必须创建析构函数过程,或者在应用程序关闭时是否自动释放资源?
我总是使用Application作为所有者,很少使用Self或Nil,我不记得我在互联网上看到的类中看到任何人声明了Destructor,除了有人使用指针时。
Delphi中的析构函数背后的逻辑与C ++中的问题一样:
每个班级是否应该有一个虚拟析构函数?
提前致谢。
编辑1:免费咨询提到我忘了说,其中一个变量可能是TBitmap类型
它只需要有一个析构函数,如果你需要清理一些东西,比如分配的内存。 例如,如果您在构造函数中使用了TClassname.Create(...),则需要释放析构函数方法。
当然,可能有许多不同的理由需要一个析构函数(一直告诉用户他的数据将被擦除),但这是最常见的。
链接地址: http://www.djcxy.com/p/34945.html上一篇: Does every Class we create in Delphi need to have destructor?
下一篇: How to affect Delphi XEx code generation for Android/ARM targets?