关于派生类中的destroy方法的问题

lsk2000 2004-04-19 11:05:32
这两天对派生类中的destructor Destroy;方法有点疑惑,大概如下:如果派生类中分配了资源,那么就需要在destructor Destroy中释放,
destructor TMyClass.Destroy;
begin
//释放该类分配的资源;
end;

困惑的地方是

destructor TMyClass.Destroy;
begin
//释放该类分配的资源;
inherited;
end;
我现在理解的是应该加上inherited这个关键词,但发现有些例子代码并没有加,想知道不加是不是错误的呢?
...全文
39 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
lsk2000 2004-04-19
  • 打赏
  • 举报
回复
如何跟踪inherited的内容呢?
Linux2001 2004-04-19
  • 打赏
  • 举报
回复
自己跟踪一下不就知道了
楚人无衣 2004-04-19
  • 打赏
  • 举报
回复
加上为好,因为若不加的话其是复写父类之Destroy,这样的话父类中同名方法已被其覆盖,则父类中所用资源不能被释放;有些代码没有加我想是父类中没有要放的资源或编写不规范

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧