请问一个create问题(20分)

  • 主题发起人 主题发起人 awfigsk
  • 开始时间 开始时间
A

awfigsk

Unregistered / Unconfirmed
GUEST, unregistred user!
var
c:TFormClass;
obj:TObject;
begin
c:=TFormClass(FindClass(AClassName));
obj:=c.create(nil);
end;
请问obj是个什么值?TFormClass()和FindClass()这二个函数的功能是什么?TFormClass是
个什么类?
 
哪有TFormClass这个类呀!!
obj应该是TFormClass类型的,你可以看看obj.ClassName
 
是不是打开VCL在问呀?
TFormClass是个元类
TFormClass = class of TForm;
具体看帮助 Class-reference types
 
比较基础又难理解的东东
 
obj是对象实例,应该是TForm及其子类实例(这段程序中)
TFormClass 如 ygpfr 所说
TFormClass()只是强制转换
FindClass()用于将类名转化为元类,即Class of Class,根据元类就可以生成对象实例了
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部