delphi – TObject包含哪些数据?

delphi – TObject包含哪些数据?,第1张

概述TObject.InstanceSize返回8,但TObject没有声明任何数据成员.根据TObject.ClassType的实现,前4个字节可以解释为指向对象的TClass元数据的指针.任何人都知道其他4个字节的开销是什么? 编辑:显然这是D2009特有的.在旧版本中,它只有4个字节. 在Delphi 2009中,有 the ability to have a reference to a sy TObject.InstanceSize返回8,但TObject没有声明任何数据成员.根据TObject.Classtype的实现,前4个字节可以解释为指向对象的TClass元数据的指针.任何人都知道其他4个字节的开销是什么?

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

解决方法 在Delphi 2009中,有 the ability to have a reference to a synchronization monitor.请参阅:
class function TMonitor.GetFIEldAddress(AObject: TObject): PPMonitor;class function TMonitor.GetMonitor(AObject: TObject): PMonitor;

…在System.pas中

此外,仍然有一个指向VMT的指针. (虚拟方法表.)From Delphi in a Nutshell:

The TObject class declares several methods and one special,hIDden fIEld to store a reference to the object’s class. This hIDden fIEld points to the class’s virtual method table (VMT). Every class has a unique VMT and all objects of that class share the class’s VMT.

总结

以上是内存溢出为你收集整理的delphi – TObject包含哪些数据?全部内容,希望文章能够帮你解决delphi – TObject包含哪些数据?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1279226.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存