当前位置:  开发笔记 > 编程语言 > 正文

TObject包含哪些数据?

如何解决《TObject包含哪些数据?》经验,为你挑选了1个好方法。

TObject.InstanceSize返回8,但TObject没有声明任何数据成员.根据TObject.ClassType的实现,前4个字节可以解释为指向对象的TClass元数据的指针.任何人都知道其他4个字节的开销是什么?

编辑:显然这是D2009特有的.在旧版本中,它只有4个字节.



1> Craig Stuntz..:

在Delphi 2009中,可以引用同步监视器.看到:

class function TMonitor.GetFieldAddress(AObject: TObject): PPMonitor;
class function TMonitor.GetMonitor(AObject: TObject): PMonitor;

...在System.pas中

此外,仍然有一个指向VMT的指针.(虚方法表.)来自坚果壳中的Delphi:

TObject类声明了几个方法和一个特殊的隐藏字段来存储对象类的引用.该隐藏字段指向类的虚方法表(VMT).每个类都有一个唯一的VMT,该类的所有对象共享该类的VMT.

推荐阅读
小色米虫_524
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有