J
jinmen
Unregistered / Unconfirmed
GUEST, unregistred user!
最近对delphi的源程序感兴趣,研究TObject类,下面的语法看不太懂
class function TObject.ClassParent: TClass;
{$IFDEF PUREPASCAL}
begin
Pointer(Result) := PPointer(Integer(Self) + vmtParent)^;
if Result <> nil then
Pointer(Result) := PPointer(Result)^;
end;
{$ELSE}
。。。 后面是汇编,不用管。
这是一个通过VMT得到对象父类的函数,不过Pointer和PPointer到底是什么意思啊。
50分只给一人,谁最先让我明白分就给谁了。如果满意可以加。
class function TObject.ClassParent: TClass;
{$IFDEF PUREPASCAL}
begin
Pointer(Result) := PPointer(Integer(Self) + vmtParent)^;
if Result <> nil then
Pointer(Result) := PPointer(Result)^;
end;
{$ELSE}
。。。 后面是汇编,不用管。
这是一个通过VMT得到对象父类的函数,不过Pointer和PPointer到底是什么意思啊。
50分只给一人,谁最先让我明白分就给谁了。如果满意可以加。