{ Virtual method table entries }
{$IF defined(CPUX64)}
vmtSelfPtr = -176;
vmtIntfTable = -168;
vmtAutoTable = -160;
vmtInitTable = -152;
vmtTypeInfo = -144;
vmtFieldTable = -136;
vmtMethodTable = -128;
vmtDynamicTable = -120;
vmtClassName = -112;
vmtInstanceSize = -104;
vmtParent = -96;
vmtEquals = -88 deprecated 'Use VMTOFFSET in asm code';
vmtGetHashCode = -80 deprecated 'Use VMTOFFSET in asm code';
vmtToString = -72 deprecated 'Use VMTOFFSET in asm code';
vmtSafeCallException = -64 deprecated 'Use VMTOFFSET in asm code';
vmtAfterConstruction = -56 deprecated 'Use VMTOFFSET in asm code';
vmtBeforeDestruction = -48 deprecated 'Use VMTOFFSET in asm code';
vmtDispatch = -40 deprecated 'Use VMTOFFSET in asm code';
vmtDefaultHandler = -32 deprecated 'Use VMTOFFSET in asm code';
vmtNewInstance = -24 deprecated 'Use VMTOFFSET in asm code';
vmtFreeInstance = -16 deprecated 'Use VMTOFFSET in asm code';
vmtDestroy = -8 deprecated 'Use VMTOFFSET in asm code';
vmtQueryInterface = 0 deprecated 'Use VMTOFFSET in asm code';
vmtAddRef = 8 deprecated 'Use VMTOFFSET in asm code';
vmtRelease = 16 deprecated 'Use VMTOFFSET in asm code';
vmtCreateObject = 24 deprecated 'Use VMTOFFSET in asm code';
{$ELSE !CPUX64}
vmtSelfPtr = -88; // VMT地址,即该地址+88
vmtIntfTable = -84;
vmtAutoTable = -80;
vmtInitTable = -76;
vmtTypeInfo = -72;
vmtFieldTable = -68;
vmtMethodTable = -64;
vmtDynamicTable = -60;
vmtClassName = -56;
vmtInstanceSize = -52;
vmtParent = -48;
vmtEquals = -44 deprecated 'Use VMTOFFSET in asm code';
vmtGetHashCode = -40 deprecated 'Use VMTOFFSET in asm code';
vmtToString = -36 deprecated 'Use VMTOFFSET in asm code';
vmtSafeCallException = -32 deprecated 'Use VMTOFFSET in asm code';
vmtAfterConstruction = -28 deprecated 'Use VMTOFFSET in asm code';
vmtBeforeDestruction = -24 deprecated 'Use VMTOFFSET in asm code';
vmtDispatch = -20 deprecated 'Use VMTOFFSET in asm code';
vmtDefaultHandler = -16 deprecated 'Use VMTOFFSET in asm code';
vmtNewInstance = -12 deprecated 'Use VMTOFFSET in asm code';
vmtFreeInstance = -8 deprecated 'Use VMTOFFSET in asm code';
vmtDestroy = -4 deprecated 'Use VMTOFFSET in asm code';
vmtQueryInterface = 0 deprecated 'Use VMTOFFSET in asm code';
vmtAddRef = 4 deprecated 'Use VMTOFFSET in asm code';
vmtRelease = 8 deprecated 'Use VMTOFFSET in asm code';
vmtCreateObject = 12 deprecated 'Use VMTOFFSET in asm code';
{$IFEND !CPUX64}
VCL对象内存分布之偏移常量
最新推荐文章于 2021-03-06 17:24:49 发布