Delphi 对象的字节大小,包括成员大小
我想知道(用于调试和记录)一个对象的大小(以字节为单位),但不像Delphi 对象的字节大小,包括成员大小,delphi,delphi-2009,sizeof,Delphi,Delphi 2009,Sizeof,我想知道(用于调试和记录)一个对象的大小(以字节为单位),但不像 Sizeof (Object) 但就像一个“深尺寸”。例如,如果对象包含哈希映射或列表,则应将该哈希映射或列表所需的实际大小添加到结果中。有没有什么方法可以做到这一点而不必添加 property Size : LongWord read GetByteSize; 每一个小东西 可能是个愚蠢的问题,但我会试一试;) 编辑:刚刚发现几乎相同的问题: 我想,这个问题可以结束了。对不起 不幸的是,您需要自己为此编写代码 不确定这是否
Sizeof (Object)
但就像一个“深尺寸”。例如,如果对象包含哈希映射或列表,则应将该哈希映射或列表所需的实际大小添加到结果中。有没有什么方法可以做到这一点而不必添加
property Size : LongWord read GetByteSize;
每一个小东西
可能是个愚蠢的问题,但我会试一试;)
编辑:刚刚发现几乎相同的问题:
我想,这个问题可以结束了。对不起 不幸的是,您需要自己为此编写代码 不确定这是否有效,但您可能会变得非常脏:
- 以字节为单位查找对象大小。使用TObject.InstanceSize
- 将每组4个字节强制转换为一个指针,然后检查它是否为ToObject。你应该能做到。如果是TObject,则应重复该步骤