如何获得TClass引用的类的Create的地址?(300)

H

huhuc

Unregistered / Unconfirmed
GUEST, unregistred user!
@TA.Create表示TA的Create的地址但若一个类是用TClass表示的,如下procedure g(tc:TClass);beginend;如何获得tc.Create的地址,分只是个形式,可以把所有的分给你.
 
L

lht123

Unregistered / Unconfirmed
GUEST, unregistred user!
对象的分配时在 堆中,不像变量时在栈中,没取过堆的地址,堆是手动分配的。
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
答案是不行,因为 TClass = class of TObject,而 TObject.Create 并非虚方法,所以你无法通过通过一个父类引用找到其子类实现。如果你是要找一个虚方法,倒是可以通过虚方法表去找。
 
顶部