Example:
procedure Test;
var
AText: array of AnsiChar;
begin
SetLength(AText, 7);
end;
Question
的实际尺寸是多少AText占用内存?是7+其长度的基数大小,即7+4=11字节吗?
再加上 4 个字节的引用计数。当然还有堆管理器开销(这取决于 delphi 版本并使用内存管理器,很容易达到 12-16 字节)。
所以这意味着:
- sizeof(元素)*元素个数
- sizeof(refcount)
- sizeof(elementnumber)
- FPC实际上存储的是最高元素,而不是元素计数。不知道德尔福)
- 当前实现:sizeof(integer)=4
- heap overhead.
- 至少为整个块分配的大小。
- 可能还有一个或两个指针(下一个块)。但这取决于内存管理器
- 许多内存管理器的最小块大小为 16 或 32。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)